zoukankan      html  css  js  c++  java
  • 异常The following attributes are mutually exclusive: asproute aspcontroller, aspaction asppage, asppagehandler

    使用最新的.net6 开发mvc的应用程序,自动生成代码的功能还是那么方便。不过跟之前的自动生成的代码有了一些变动。

    <td>
                    <a asp-action="Edit" asp-route-id="@item.Id">修改</a> |
                    <a asp-action="Details" asp-route-id="@item.Id">详情</a> |
                    <a asp-route="news" asp-controller=“news” asp-action="index" id="@item.Id">新闻点</a>
                    <a asp-action="Delete" asp-route-id="@item.Id">删除</a>
                </td>

    我当前是在usercontroller的试图下,想要在这里跳转到另外一个action的index中,于是在自动生成的代码中加了一句。

    大家看第二行代码 他自动生成的代码中指定了asp-action和aps-route-id

    他们分别是跳转的action和跳转的参数id

    如果我想跳转到另一个controller中,是不是指定route 为news就行了呢,写完以后运行代码,系统提示了这样的错误:

    InvalidOperationException: Cannot determine the 'href' attribute for <a>. The following attributes are mutually exclusive: asp-route asp-controller, asp-action asp-page, asp-page-handler

    意思是 以下的这些属性是互斥的:

    asp-route asp-controller, asp-action asp-page, asp-page-handler

    就是说

    asp-route asp-controller不能同时指定, asp-action asp-page不能同时指定。

    明白了原因就好办了。

    在代码中把asp-toute属性去掉

    <td>
                    <a asp-action="Edit" asp-route-id="@item.Id">修改</a> |
                    <a asp-action="Details" asp-route-id="@item.Id">详情</a> |
                    <a asp-controller="news" asp-action="index" id="@item.Id">新闻点</a>
                    <a asp-action="Delete" asp-route-id="@item.Id">删除</a>
                </td>

    然后运行程序,不再有异常。OK,问题解决。

  • 相关阅读:
    基于XMPP的即时通信系统的建立 — XMPP IQ详解
    XMPPManager 解析
    Xcode 工程文件“.xcodeproj”文件夹解析
    Description &&debugDescription && runtime(debug模式下调试model)
    day04作业
    数字、字符串、列表、字典,jieba库,wordcloud词云
    if,for,异常,random模块,计算圆周率
    day03
    day02
    计算机基础
  • 原文地址:https://www.cnblogs.com/kdkler/p/15732467.html
Copyright © 2011-2022 走看看