【问题标题】:Delegate with several entity framework return types具有多种实体框架返回类型的委托
【发布时间】:2015-02-17 16:16:58
【问题描述】:

我想知道是否可以创建具有多种返回类型的委托。通常我会简单地将返回类型设置为“对象”,但由于我使用的是实体框架并且是新手,所以它似乎并不那么容易......

这就是我所拥有的:

private delegate List<Customer> SearchDelegate(string searchPhrase);

这就是我想要的:

private delegate List<Some sort of generic entity similar to object> SearchDelegate(string searchPhrase);

有什么想法吗?谢谢!

【问题讨论】:

  • 我认为Func可以以某种方式使用

标签: c# entity-framework generics delegates


【解决方案1】:

方法(包括委托)不能仅仅通过返回类型来重载。您可以有多个代表:

private delegate List<Customer> SearchCustomerDelegate(string searchPhrase);
private delegate List<Order> SearchOrderDelegate(string searchPhrase);

或将委托设为通用:

private delegate List<T> SearchDelegate<T>(string searchPhrase);

【讨论】:

  • 通用解决方案正是我一直在寻找和尝试做的。谢谢!
  • 我需要一个 SearchDelegate 变量,它是通用的并且在整个班级中都是已知的,我将如何创建它但不给它一个值?类似于: private SearchDelegate searchDelegate; ???
  • @Ohlafl 只能泛型声明类和方法,因此您需要将类设为泛型或将委托设为非泛型。
猜你喜欢
  • 2022-07-26
  • 1970-01-01
  • 1970-01-01
  • 2011-10-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多