此代码存在于一个观点:该代码是业务逻辑还是表示逻辑?
if (Model.Group.IsPremium && null != Model.Group.ContactInfo)
{
Html.RenderPartial("ContactInfo", Model.Group.ContactInfo);
}
乍看之下,它的显示逻辑,因此它的确定。但是这跟我坐得不对。
事情是,如果该组被分类为保险费,这意味着他们已付款,这显示联系信息是业务需求。
你们认为什么?这个逻辑应该移入HtmlHelper还是通过其他方式抽象出来?或者这是视图的预期用法?这段代码最好的做法是什么?
+1 IMO,这是ViewModel属性的完美使用 – Gregoire 2010-08-07 10:48:04
我希望视图尽可能干净,在合理的范围内。我正在尝试为我们正在开发的项目制定最佳实践指南,并且希望确保我提出的建议合理有效。 – DaveDev 2010-08-07 10:48:47
我认为最好的解决方案是创建一个新的助手,如下所示,而不是添加标志到模型中:如果我需要添加一个新的“检查”,我必须改变模型,这是不正确的。最好添加一个新的Helper,这个Helper也适用于这个范围,而不是为模型添加上千个标志 – 2011-03-29 16:19:51