【问题标题】:Why TagHelpers in Asp.net Core 3.1 is not working?为什么 Asp.net Core 3.1 中的 TagHelpers 不起作用?
【发布时间】:2020-09-02 23:21:32
【问题描述】:

我在使用 Asp.net Core TagHelpers 时遇到问题,我阅读了 StackOverFlow 中提出的其他问题,但他们没有提供帮助。

例如,当我在我的剃须刀页面中编写此代码时:

<a asp-page="/P" class="btn btn-primary">Click Me</a>

请注意,我的/P 页面与我使用代码的页面位于同一目录中。

所以我运行该项目并前往我的页面,当我点击它时看到 Click Me 按钮,它会将我重定向到当前页面,而 asp-page tagHelper 无法正常工作

我检查了Click Me 按钮并看到了这段代码:

<a class="btn btn-primary" href>Click Me</a>

您可以看到asp-page TagHelper 刚刚在我的标签a 中创建了空的href(TagHelpers 在我的所有项目中都不起作用)并且/P 页面是我为页面定义的路由(我在没有路由和路由的情况下对其进行了测试)两个测试都失败并且不起作用。

我的项目有Identity 3.1,所以如果我转到Identity 区域中的Register 页面,TagHelpers 在那里工作,但在我的剃须刀中他们不起作用:(
我的_ViewImports.cshtml 文件如下: The _ViewImports.cshtml File ScreenShot

我试图将*,Microsoft.AspNetCore.Mvc.TagHelpers 放在双引号中,但它们没有帮助。

【问题讨论】:

  • 你不能把英语中的每一个单词都大写!

标签: c# asp.net asp.net-core razor-pages asp.net-core-3.1


【解决方案1】:

以这种方式尝试。 asp-page 仅表示页面名称,asp-route 用于传递路由参数:

<a asp-page="pagename" asp-route-parameterId="@Model.parameterId" asp-route-ContentId="0" title="Add Content" class="glossybutton addcontentbtn">Add Content</a>

【讨论】:

  • 它现在正在工作,我的 asp 页面不工作,它只在使用的标签中放置 (href),没有任何地址,我试图更新 nuget 包,但他们没有帮助跨度>
  • 我的回答有帮助吗?
  • 不,问题已解决,我在我的解决方案中创建了一个类型为(Web 应用程序)的项目并在那里测试了 taghelper,结果很好,所以我删除了该项目并检查了我的第一个项目,现在它工作正常。我不知道为什么会出现这个问题并已修复:)
【解决方案2】:

问题已解决

我尝试创建一个 ( Web Application ) 类型的项目并在那里测试我的代码并且代码运行良好。

所以我删除了项目并编辑了我的_ViewImports.cshtml 文件并将usingnamespace 放在文件中,因此问题得到解决。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多