相关疑难解决方法(0)

创建后将属性添加到匿名类型

我使用匿名对象将我的Html属性传递给一些辅助方法.如果消费者没有添加ID属性,我想在我的帮助方法中添加它.

如何向此匿名对象添加属性?

c# reflection anonymous-objects

99
推荐指数
3
解决办法
4万
查看次数

MVC 3:使用HtmlHelpers有条件地添加禁用属性

我有一个ASP.Net MVC 3 Web应用程序,我正在使用HtmlHelper类向视图页面添加一个复选框,就像这样......

@Html.CheckBox("CheckBox1", true, new { @class = "Class1" })
Run Code Online (Sandbox Code Playgroud)

我想要做的是根据视图状态属性有条件地添加disabled属性.基本上以下是理想的......

@Html.CheckBox("CheckBox1", true, new { @class = "Class1", @disabled = Model.ReadOnly })
Run Code Online (Sandbox Code Playgroud)

遗憾的是,由于disabled属性的性质,这将不起作用,因为分配给disabled属性的任何值(甚至"false")都将转换为true.

我已经想到了一些解决这个问题的解决方案,所以问题不是我怎么能这样做.但是,有一种简单的方法,如上面所需的方法?或者我是否必须诉诸以下其中一项?

我知道我能做什么......

  1. 创建一个if/else语句并写入不同的Html.CheckBox行(对于可读性而言不是很好 - 并且可能会抛出标记警告 - 不确定)

  2. 跳过HtmlHelper类并手写标记以允许更好的条件属性(保持代码更短,但增加了不一致性)

  3. 创建一个自定义帮助程序,它采用"禁用"参数(最干净的解决方案,但需要不需要的额外方法 - 可能是目前为止最好的选择)

asp.net-mvc html-helper asp.net-mvc-3

69
推荐指数
4
解决办法
4万
查看次数