【问题标题】:asp.net tag helpers not workingasp.net 标签助手不起作用
【发布时间】:2016-07-05 03:16:45
【问题描述】:

Asp.net 标签助手在我的项目中不起作用。

我将此代码添加到project.json

"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final",
"Microsoft.AspNet.Tooling.Razor": "1.0.0-rc1-final",

在_ViewImports.cshtml我添加

@using Homebank
@addTagHelper "*, Microsoft.AspNet.Mvc.TagHelpers"

在视图中我使用 asp.net 标签助手 - 页面不返回数据;

@model Homebank.Models.Admins

@{
    ViewData["Title"] = "Create";
}
 <input asp-for="Email" class="form-control" />

不是错误,不是异常。白页

【问题讨论】:

  • 白页可能是 404,因此无法到达您的视图,请使用 Web 浏览器开发工具查看响应代码
  • 如果我删除代码 &lt;input asp-for="Email" class="form-control" /&gt; 它的工作完美。
  • 这很奇怪,听起来像添加会导致意外错误,您是否在调试器中尝试过查看发生了什么错误?

标签: c# tags asp.net-core asp.net-core-mvc helper


【解决方案1】:

确保您的班级具有该属性

您的标签助手正在尝试访问Homebank.Models.Admins.Email。确保该类具有 Email 属性。

namespace Homebank.Models
{
    public class Admins
    {
        public string Email { get; set; }
    }
}

我认为这是最有可能的解决方法,因为您的代码在您删除 Email 标记助手时有效。不过,这里有一些其他的想法。

添加详细的错误页面

我们可以收到详细的错误页面,而不是白屏。将以下代码行添加到Configure 方法。

public void Configure(IApplicationBuilder app)
{
    // other code omitted for clarity
    app.UseDeveloperExceptionPage();
    app.UseMvc();
}

这将提供更多调试信息。例如。

恢复你的包

您可能需要恢复Microsoft.AspNet.Mvc.TagHelpers 包。以下是命令行的方法:

dnu restore
dnu build
dnx web

这是一个不太可能的解决方法,因为当您注释掉 Email 标签助手时,您的代码会运行,即使您在 _ViewImports.cshtml 页面中使用标签助手也是如此。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多