【问题标题】:Razor display template fails XHTML 1.0 Transitional validationRazor 显示模板未通过 XHTML 1.0 过渡验证
【发布时间】:2012-05-26 06:39:08
【问题描述】:

我刚开始使用 mvc3 和 razor,过去做过一些 mvc2,有些事情让我感到困惑。

我正在尝试从我的模型中的集合中呈现无序列表,并且已成功完成。使用此代码。

在我看来:

@using (Html.BeginForm())
{
    <ul>
        @Html.DisplayFor( m => m.SomeThings)
    </ul>
}

在我的 DisplayTemplate 中:

@model MyNamespace.Models.SomeType               
<li>
    <a href="@Url.Content(String.Format("~/SomeUrl/{0}", @Html.DisplayFor(x => x.UrlText)))">@Html.DisplayFor(x => x.Name)</a>
</li>

这一切正常,但我注意到显示模板未通过 XHTML 1.0 过渡验证,因此会生成警告(元素 'li' 不能嵌套在元素 li' 中)这很烦人,因为它没有嵌套但无论如何要阻止这个错误?还是我必须忍受的?

【问题讨论】:

  • 要么您尝试验证剃刀模板(它不是 XHTML,因此您不应该尝试验证它),要么您需要向我们展示您从中生成的 XHTML验证失败。
  • 看起来 resharper 正在尝试这样做,任何人都知道如何阻止它,或者我是否报告了 resharper 中的错误,它肯定不嵌入
  • 标签

标签: asp.net html asp.net-mvc-3 razor resharper-6.0


【解决方案1】:

代码对我来说看起来不错,我还注意到模板试图得到验证,我学会了接受它,resharper 报告一切都很好,但只是提供绿色提示而不是错误,因为它正在尝试验证不是 XHTML 的东西然后你可以离开它。

【讨论】:

    猜你喜欢
    相关资源
    最近更新 更多
    热门标签