c# - 如何在 ASP.NET 中添加名称中带有破折号的默认控制器?
问题描述
我正在使用 Visual Studio 2017 中的 C# 和 Razor 开发一个 ASP.NET(针对 .NET Framework 4.7)网站。我正在使用带有MVC设置的ASP.NET Web 应用程序(.NET Framework)模板。
未经修改,该模板提供了一个具有以下页面树的网站模板(从 Web 访问者的角度来看):
/
(控制器Home
,动作Index
)/Home/About
(控制器Home
,动作About
)/Home/Contact
(控制器Home
,动作Contact
)
为了满足 SEO 要求,我需要将 URL 中的“Home”设置为“Site-Name”,包括一个破折号。结果应该是这样的(从网络访问者看到):
/
(控制器Home
,动作Index
)/Site-Name/About
(控制器Home
,动作About
)/Site-Name/Contact
(控制器Home
,动作Contact
)
从我的实验中,我只能设法拥有一个自定义操作名称,但无法让控制器名称起作用。将Home控制器重命名为Site-Name将不起作用,因为破折号不是有效的类名字符。
如何为默认控制器实现所需的 URL 方案?
PS:一般如何添加带有破折号的控制器(URL 部分)?
解决方案
推荐阅读
- python - 熊猫将帧的移动平均值附加到帧
- python - 在python中获取html标签的数值
- javascript - JavaScript 排序:整理器 - 修复 aa (å)
- scala - 在简单的 Scala 项目中对 json4s-native 进行着色时出错:“类路径中缺少符号 'term org.json4s'。”
- vue.js - 在 Vue 中,当 select 元素的选项不能立即可用时,初始状态会根据是使用 v-model 还是 value/input 绑定而有所不同
- python - 未启用时将 QDoubleSpinBox 值设置为空字符串
- python - 注册时检查用户名是否存在于python中
- python - ValueError:数组在python pandas中的长度必须全部相同
- scala - scala数据框列值条件计算
- scala - 如何使用 sparknlp 注释文本文件?