【发布时间】:2021-10-18 01:45:24
【问题描述】:
我有一个 .NET Core 项目,它在同一个解决方案中包含 MVC 和 Web API。我正在尝试将这些项目相互连接,但 API 的路由和 MVC 的冲突。
我有一个这样的标签,
<a asp-controller="Categories" asp-action="Update"
class="btn btn-primary" asp-route-categoryId="@category.Id">Update</a>
那么这个a标签会生成一个这样的链接
href="/api/Categories?categoryId=1"
我的控制器和操作使用相同的名称,我认为这就是它发生的原因,所以我更改了名称然后它起作用了。我可以更改名称,但想知道为什么会这样。有不同的解决方案吗?
【问题讨论】:
-
对于 api 和 mvc 应用程序,您需要哪些 href?你现在有什么href?
-
My controllers and actions are using same names是什么意思?能分享一下你的控制器和动作吗? -
这是查看 mvc 中内容的标签,此 href 必须触发 mvc 控制器中的操作,但如您所见,它会执行 api 的操作
-
例如,我在 api 和 mvc 中有类别控制器,这两个控制器都有更新操作,结构完全相同。
标签: c# asp.net-core .net-core asp.net-core-webapi asp.net-core-3.1