类型参数不能从用法mvc3中推断出来

本文关键字:推断出 mvc3 用法 不能 类型参数 | 更新日期: 2023-09-27 18:07:52

我正在尝试使用带有扩展方法的强类型视图

<% using (Html.BeginForm()) { %>
    <%: Html.ValidationSummary(true) %>
    <fieldset>
        <legend>MyUsageViewModel</legend>
        <div class="editor-label">
            <%= Html.LabelFor(model => model.test) %>
        </div>   
                              <p>
            <input type="submit" value="Save" />
        </p>
    </fieldset>
<% } %>
    <div>
    <%: Html.ActionLink("Back to List", "Index") %>
</div>

我得到以下错误:

方法的类型参数"System.Web.Mvc.Html.LabelExtensions.LabelFor (System.Web.Mvc.HtmlHelper,System.Linq.Expressions.Expression>)不能从用法中推断出来。尝试指定类型参数明确。

如果你能帮忙的话

类型参数不能从用法mvc3中推断出来

似乎你的模型没有'test'属性,你正试图在Html中使用。LabelFor辅助方法

确保你的模型属性是公共的:

public class LocationModel
{
    public double Latitude { get; set; }
    public double Longitude { get; set; }
    public string Name { get; set; }
}

示例代码没有显示可能出现问题的类型的定义。确保它在页面的顶部。我现在在我的平板电脑上,没有复制/粘贴的示例但是语法应该是@model modelType

如果这不是问题,您可以添加模型定义和视图的全部内容吗?

在将一些代码移动到不同的名称空间后,我看到了同样的问题,即使我已经正确更新了模型引用等。解决方案是去构建并执行"清洁解决方案",然后是"重建解决方案"