我有一个函数可以返回我们目录中的零件列表。
该函数按预期工作,但我发现还需要创建一个仅返回整个零件目录的子集的重载函数。
目前,我已经像这样编写了原始函数和重载函数。
Public Function GetpartsList() As IEnumerable(Of PartsWarehouse)
Return From p In mySession.Query(Of PartsWarehouse)()
End Function
Public Function GetpartsList(Engine As Boolean) As IEnumerable(Of PartsWarehouse)
Return From p In mySession.Query(Of PartsWarehouse)() _
.Where(Function(p) p.IsEngineOnly)
End Function
我这样称呼这两个函数。
GetPartsList()
GetPartsList(isEngine)
但这似乎有点违反直觉,因为即使我为“引擎”传递了一个值,我也从未真正使用过它。
有没有更合乎逻辑的方法来重载这个函数?也许我应该只拥有一个函数,并在其中包含某种 if/else 逻辑。