我正在尝试在简单的Web应用程序中使用Supervising Controller模式。我的视图是一个注册表单,有许多字段供用户输入(想想几个gmail注册页面)这个数据将填充一个实体,并在用户提交时处理该实体。
例如:
public interface ICreateAccountView
{
string firstname { get; set; }
string lastname { get; set; }
string loginName { get; set; }
string password { get; set; }
string addressLine1 { get; set; }
string addressLine2 { get; set; }
string postCode { get; set; }
IList<string> preferences { get; set; }
.... Many others omitted
}
我对此有几个问题:
1)当我有这么多时,我的观点是否应该像这样?我不应该只使用我将填充的实体对象吗?
2)如果我的控制器持有对该对象的引用,这个数据最终会填充一个实体对象吗?
任何帮助或建议都将不胜感激。
答案 0 :(得分:1)
没有理由在控制器可以调用的视图上没有方法返回实体形式的所有视图数据。只要控制器要求数据,你就可以了!
现在为那里的纯粹主义者。他们宁愿你不从视图中返回“实体”。而是尝试返回视图对象(或dto /数据传输对象),以便视图确实没有中间层/域对象的概念。这会将视图与业务层分离开来。
取决于这个应用程序的大小以及你想要去的兔子洞的深度。