我正在检查KIGG的代码,并注意到有很多接口。我对MVC很新,并且了解接口是什么,有点。
Interface如何在MVC中运行,为什么使用它?
答案 0 :(得分:5)
您为其他应用程序实现接口的原因相同......从实现中抽象出实现。
它允许ASP.NET MVC框架使用您的代码,即使Microsoft开发人员在编写框架之前没有您的实现。
此外,就像tvanfosson提到的那样......使用Interfaces也极大地增强了ASP.NET MVC团队正确地对其框架进行单元测试的能力。
答案 1 :(得分:2)
我认为您可能在MVC应用程序中看到更多接口的主要原因是对可测试性的新重视。这是MVC的重大变化之一,可测试性在框架设计中得到了更多的重视。在设计单元测试时,接口更容易使用,因为它们允许您为要使用的测试开发模拟实现。随着时间的推移,我希望很多.NET(如Web.Abstractions)转向更可测试的(抽象基类/接口)形式。