【问题标题】:VB ASP.NET MVC 3 Razor CheckboxFor Error "Templates can be used only with field access"VB ASP.NET MVC 3 Razor CheckboxFor 错误“模板只能用于字段访问”
【发布时间】:2012-08-01 18:35:05
【问题描述】:

以下代码产生错误,“模板只能用于字段访问、属性访问、单维数组索引或单参数自定义索引器表达式。”

Line 66:             </div>
Line 67:             <div class="editor-field">
Line 68:                 @Html.CheckBoxFor(Function(m) m.IsCompanyOwner)
Line 69:                 @Html.ValidationMessageFor(Function(m) m.Company)
Line 70:             </div>

它指向第 68 行。

我已经阅读了其他说设置类型的帖子,我已经在模型中完成了:

<DataType(DataType.Text)> _
Public Property IsCompanyOwner As String

但是,它仍然给我错误。我能做些什么来解决?谢谢。

【问题讨论】:

    标签: asp.net-mvc vb.net asp.net-mvc-3 razor


    【解决方案1】:

    您尝试将复选框绑定到字符串。它必须绑定到一个布尔值。请参阅文档here

    所以 IsCompanyOwner 应该是布尔值,而不是字符串。

    【讨论】:

    • 我该怎么做?我的数据库需要一个字符串(SQLCe 中没有布尔值选项)。
    • 然后创建一个 bool 类型的新属性并将复选框绑定到该属性。然后在控制器中,在持久化之前相应地设置字符串。
    • 您的数据库应该绝对不会影响您的视图或视图模型。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-19
    相关资源
    最近更新 更多