asp.net-mvc – 在您的ViewModel中放置什么
发布时间:2020-12-15 23:04:19 所属栏目:asp.Net 来源:网络整理
导读:你在看什么呢? 最近blog从Scott Hanselman关于使用特殊的模型粘合剂更容易测试导致我想到以下: 你在控制器逻辑中建立视图模型是什么,应该在视图中放置什么?他所做的是这样的: var viewModel = new DinnerFormViewModel { Dinner = dinner,Countries = ne
你在看什么呢?
最近blog从Scott Hanselman关于使用特殊的模型粘合剂更容易测试导致我想到以下: var viewModel = new DinnerFormViewModel { Dinner = dinner,Countries = new SelectList(PhoneValidator.Countries,dinner.Country) }; return View(viewModel); 现在,我用同样的方式将数据传递给我,但我不确定他如何处理国家财产.你可以争辩双方: PS:为了保持简单,让我们假设默认的ASP.NET MVC上下文,所以基本上你的开箱即用项目.默认视图引擎和所有爵士乐. 解决方法
在MVC中(至少是这种风格),控制器的一个职责就是为视图准备数据.所以我认为为视图消耗准备一个特定的模型是完全可以接受的,这意味着它将被用在一个下拉列表中.在这种情况下,控制器只是使视图更容易,实际上可以防止尴尬的代码不得不涓流地进入视图.它也使得一个在VDataData [“Countries”]中的ViewData中没有这些魔术字符串.
所以总结一下,尽管在责任方面似乎有一些灰色的区域,但最终这是控制器的工作:与视图进行交互,并将域模型转换为更容易消费的其他模型视图. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc-3 – 如何用另一个替换局部视图?
- asp.net-mvc – MVC数据类型ErrorMessage
- asp.net-mvc – ASP.Net MVC:静态HTML文件的RenderPartial
- asp.net – 无法加载文件或程序集’System.Net.Http,Versio
- asp.net-mvc – Paypal REST API – 在付款过程中传递参数
- 实体框架 – 使用EF和WebAPI,如何返回一个ViewModel并支持I
- 在ASP.NET MVC 5中向Windows角色添加自定义角色
- asp.net-mvc – ASP.NET MVC帐户控制器使用指南?
- asp.net-mvc-4 – 我应该如何使用ReturnUrl = ViewBag.Retu
- 集成EntLib实现ASP.NET MVC的异常处理[续篇]
推荐文章
站长推荐
- asp.net-mvc – ASP.Net MVC 3:反向授权属性
- C#进阶系列——WebApi 接口参数不再困惑:传参详
- ASP.NET:如何从javascript访问转发器生成的元素
- IIS ASP.NET WebApi在请求同一台服务器时死锁
- IIS7 – 一次只能提供一页.这是一个让我crazy!
- asp.net – FederatedAuthentication.WSFederati
- asp.net – 如何从服务器控件中删除’name’属性
- asp.net – 带有Guid参数的ASMX webservice
- asp.net – 可能添加MIME类型到web.config而不可
- asp.net – 使用HTML’readonly =“readonly”’
热点阅读