C#接口具有相同的方法名称

C#接口具有相同的方法名称,第1张

概述我不知道我想做什么是不可能的:或者我没有以正确的方式思考它. 我正在尝试构建一个存储库接口类,它接受泛型类型并将其用作大多数方法返回的基础,即: public interface IRepository<T> { void Add(T source); T Find(int id);} 然后,这将由实际的存储库类继承,如下所示: public class TestClientRe 我不知道我想做什么是不可能的:或者我没有以正确的方式思考它.

我正在尝试构建一个存储库接口类,它接受泛型类型并将其用作大多数方法返回的基础,即:

public interface IRepository<T> {    voID Add(T source);    T Find(int ID);}

然后,这将由实际的存储库类继承,如下所示:

public class TestClIEntRepository : IRepository<ClIEntEmailAddress>,IRepository<ClIEntAccount> {}

例如,我想在ClIEntRepository中对几种不同的对象类型(ClIEntAccount,ClIEntEmailAddress等)执行 *** 作;但总的来说,所需的 *** 作类型都是一样的.

当我尝试使用TestClIEntRepository时(​​在显式实现Interfaces之后),我看不到多个Find和Add方法.

有人可以帮忙吗?
谢谢.

解决方法 当然 – 您所要做的就是将它用作适当的界面:
TestClIEntRepository repo = new TestClIEntRepository();IRepository<ClIEntEmailAddress> addrRepo = repo;ClIEntEmailAddress address = addrRepo.Find(10);IRepository<ClIEntAccount> accountRepo = repo;ClIEntAccount accoutn = accountRepo.Find(5);

基本上显式实现的接口方法只能在接口类型的表达式上调用,而不能在实现接口的具体类型上调用.

总结

以上是内存溢出为你收集整理的C#接口具有相同的方法名称全部内容,希望文章能够帮你解决C#接口具有相同的方法名称所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1249288.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存