asp.net-mvc - ASP.NET MVC ModelMetadata - 当我们在模型上放置属性来描述 UI 时,我们是否违反了关注点分离?

标签 asp.net-mvc modelmetadata

根据这个blog post “ModelMetadata 对象是使用取自属性的数据构建的,主要来自 System.ComponentModel 和 System.ComponentModel.DataAnnotations 命名空间。”

通过将 UI 助手属性放在 Model 对象( DisplayFormatUIHint )上,我们不是耦合了 Model 和 View 吗?

最佳答案

我相信是这样。就我个人而言,我让我的模型完全与 ui 无关,并且我编写了 ViewModels,它将在我的 View 中代表我的模型。然后将所有注释分配给这些 ViewModel。

我认为违规是因为这限制了您重用模型的能力,因为您基本上是在模型中定义 View 行为。

关于asp.net-mvc - ASP.NET MVC ModelMetadata - 当我们在模型上放置属性来描述 UI 时,我们是否违反了关注点分离?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7094962/

相关文章:

javascript - .NET 和 JavaScript 中的语法差异导致 MVC 验证失败

css - 使用数据库值 MVC 3 更改背景

c# - 使用 Unity 依赖注入(inject)注册 UrlHelper

c# - Entity Framework - 从实体中获取表名

c# - MVC 3 - 如何从操作方法返回显示模板?

ajax - MVC6 EF7 Viewcomponent ajax 刷新问题

asp.net-mvc-3 - 使用 AutoMapper 将元数据传输到 View 模型的技术

asp.net-mvc - 接触模型属性之一的 ModelMetadata

asp.net-mvc - ASP.NET MVC 2 中的元数据类型和客户端验证