为了让View部分可以测试,我们使用interface来分离View和业务逻辑的耦合。
我的问题是:
Q:对于在aspx.design.cs中声明的控件,我们也需要在interface中声明吗?如果要声明,那么在aspx.design.cs中的控件声明是不是就是interface的实现?
我们不能在interface直接声明跟aspx.design.cs控件同名的变量,我们应该认为aspx.design.cs中的控件就是view的一部分,我们无法控制。我们能做的是在interface中声明一个跟控件同类型的变量,然后在presenter中初始化这个变量,再把这个变量赋值给控件。我们也可以声明一些给控件属性赋值的变量在interface里面,比如如果我们需要给一个DataGrid提供一个List作为数据源,我们只需要在interface中声明一个List,然后在aspx.cs中实现就可以了。
Q:因为View是基于PortalModule 的,在view.aspx.cs中,会使用很多PortalModule 中的属性,那是不是用到了什么属性,我们就要在interface中声明什么属性呢?
继续阅读与本文标签相同的文章
-
微软职位内部推荐-Senior Network Engineer
2026-05-25栏目: 教程
-
微软职位内部推荐-SDE
2026-05-25栏目: 教程
-
微软职位内部推荐-ATG Engineer II
2026-05-25栏目: 教程
-
在使用Fake framework的时候,为什么有一些函数没有生产mock呢?
2026-05-25栏目: 教程
-
Call Azure Queue get "The remote server returned an error: (400) Bad Request."
2026-05-25栏目: 教程
