gpt4 book ai didi

c# - 仅基于返回类型重载

转载 作者:太空狗 更新时间:2023-10-30 00:36:36 27 4
gpt4 key购买 nike

我想从这个函数返回 List<>

public DataTable GetSubCategoriesBySubCatID(Guid SubCategoryID)

所以我想要的是

public List<SubCategories> GetSubCategoriesBySubCatID(Guid SubCategoryID)

我知道仅基于返回类型不支持重载,我只是不想在两个函数中重复相同的代码。

在不影响对第一个函数适用的引用的情况下实现此目标的最佳方法是什么

最佳答案

给他们不同的名字:

public DataTable GetSubCategoryTableBySubCatID(Guid subCatID)

public List<SubCategory> GetSubCategoryListBySubCatID(Guid subCatID)

除此之外,这将使您在阅读调用代码时更清楚您对哪个方法感兴趣。

如果那些应该以通用方式实现,编写一个包含通用核心的私有(private)方法,并从两个公共(public)方法中调用它。例如,您可以使用委托(delegate)来执行“我找到了结果,将其添加到您的集合”部分,或使用迭代器 block :

// "action" will be called on each sub-category
private void FindSubCategoriesBySubCatID(Guid subCatID,
Action<SubCategory> action)

private IEnumerable<SubCategory> FindSubCategoriesBySubCatID(Guid subCatID)

关于c# - 仅基于返回类型重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1366136/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com