接口方法的返回类型应该只是一个接口吗?
这可能看起来像一个模糊的“你的意见是什么'问题,但事实并非如此!
假设我有3个提供者,所有提供者都实现了我的界面' IDocProvider'以及它的功能' IGetDoc()为xxxx' - 让我们说目的是从3个不同的商店中提取Word文档。
现在,我应该制作返回类型类' MyDocClass'还是界面?我被告知接口应该只返回接口类型。
返回类型的接口(例如IMyDoc)似乎是正确的做法,但是当只有一个接口的实现时,必须拥有IMyDoc的实现感觉很奇怪。如果返回类型是一个类,那么该类不能在我的模型程序集中,因为当然会导致循环引用。
什么是可行的方法,这使我免于编写IMyDoc的实现?
谢谢,任何答案都赞赏!附:使用.NET 4.5