asp.net-mvc - ASP.NET MVC向DLL中的Model添加HiddenInput属性

标签 asp.net-mvc asp.net-mvc-3

我正在开发一个 asp.net MVC 3 应用程序,该应用程序使用编译库中的数据模型。不过,我希望能够将以下声明添加到编译的 dll 中的某些数据模型属性中:

[HiddenInput(DisplayValue = false)]

问题是我没有 DLL 的源代码,而且作者不想引入对 System.Web.Mvc 的依赖。有没有一种方法,使用部分类或类似的东西,可以让我添加这个属性?

标记

最佳答案

不,没有办法。属性在编译时嵌入程序集的元数据中,并且现有类无法在运行时修改。就部分类而言,它们仅在同一个程序集中工作。

此外,如果此程序集的作者不想在其库中引入 System.Web.Mvc 的依赖项,他们可能有这样做的原因。显然,作为 MVC 开发人员,您应该使用 View 模型,这些 View 模型是专门根据您的 View 需求定制的类,然后在域模型(来自不同库的东西,...)和 View 模型之间进行映射。然后,您将这些 View 模型传递给 View 而不是域模型。当然,您的 View 模型将具有所有必要的元数据和格式,例如 DisplayName、Hidden,...为了简化这两个类之间的映射,您可以使用 AutoMapper .

关于asp.net-mvc - ASP.NET MVC向DLL中的Model添加HiddenInput属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5339621/

相关文章:

c# - 模型中属性的正则表达式验证

ASP.NET Web API knockout 验证

c# - 从数据库中获取具有特定列的数据 MVC4

ASP.NET MVC 3 添加 Controller 抛出错误 "Object reference not set to an instance of object"

javascript - 如何将字符串转换为 JSON 对象

javascript - 我的 asp.net 应用程序的 Excel 网格

c# - 我们真正在寻找哪种 mvc3/c# 技术/体系结构 - nservicebus、WCF 或其他?

.net - Orchard CMS 模块仪表板中的重复模块条目

c# - 从 LogIn 操作方法中的 returnurl 获取路由值

asp.net-mvc-3 - ASP.NET MVC 3书籍计划