/*十有三博客*/
  • 首页
  • 关于本站
  • 网站地图
  • RSS订阅

ASP.NET MVC UrlParameter.Optional字段用法和意思

2015-08-14 十有三 0 浏览:1万+ .NET技术 ASP.NET MVC

本文作为学习笔记,研究了下在ASP.NET MVC中设置路由时遇到的的UrlParameter.Optional字段,理解和明白了该字段的用法和意思。

按照MSDN的说明,UrlParameter.Optional表示包含可选参数的只读值。可选参数的意思是所设置的参数不是必须要设置的,可以不传。比如你控制器中有个id参数,对id参数设置了Optionanl,那么在URL路径中可以不设置id。

这里直接对照代码来说明比较清楚,比如下面的默认路由设置,这里将id可选参数设置取消掉:

routes.MapRoute(
    name: "Default",
    url: "{controller}/{action}/{id}",
    defaults: new { controller = "Home", action = "Index"}
//默认是有设置 id = UrlParameter.Optional 
);

默认Home控制器代码如下:

public ActionResult Index()
{
    return View();
}

打开该页面会发现该页面无法打开,测试的URL路径为:localhost:10934/Home/Index,出现HTTP Error 403.14的错误:

HTTP Error 403.14

这是因为id作为必须的参数,如果没有传入这个参数就会报错。

解决方法有两个,一个是使用localhost:10934/Home/Index/1 这个路径,其实就是设置了参数。另一个则是在路由配置中设置id = UrlParameter.Optional。


作者:十有三

出处:https://shiyousan.com/post/635751704906562507

版权声明:本文采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。欢迎转载本文,转载请声明出处或保留此段声明。


  • 上一篇: 如何将酷我音乐的歌曲标题改成歌曲名称(文件名)
  • 下一篇: ASP.NET MVC AJAX.BeginForm异步提交和刷新无效

相关文章
  • 解决asp.net中 jquery ajax调用一般处理程序ashx出现"正在中止线程"异常
  • ASP.NET MVC 动态返回指定的HTTP状态码
  • ASP.NET MVC中MvcHtmlString类的两个疑问:是什么以及怎么使用?
  • .NET项目在生成时如何将静态资源文件复制到输出目录
  • ASP.NET 在.aspx页面中使用<script runat="server"></script>标记
  • 解决IIS ASP.NET 网站发布后出现错误 Unable to connect to any of the specified MySQL hosts

文章分类

.NET技术 123 数据库 24 Web前端 21 网站建设运维 37 操作系统与应用 66 程序猿日常 11 开发工具 12 其他随笔 13

文章标签

ASP.NET ASP.NET MVC C# CSS HTML IIS Javascript Linux MongoDB MySql SQL SQL Server Visual Studio Windows系统 版本控制系统 插件工具 服务器 搞笑娱乐 好文分享 软件应用 生活知识 手机问题 随笔 网络知识 网站设计优化 网站维护 养生保健 异常处理 硬件设备 游戏攻略

热门文章

  • IIS8如何安装和使用URL重写工具-URL Rewrite
  • 林蛋大与楚中天,朱肚皮与朱月坡
  • 解决IE11安装升级失败和在安装前需要更新的问题
  • Windows Server 2012无法安装 .NET3.5-安装角色或功能失败,找不到源文件
  • VS重构重命名的快捷键

推荐文章

  • HTTP 错误 404.17 - Not Found请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理。
  • 由于 Web 服务器上的“ISAPI 和 CGI 限制”列表设置,无法提供您请求的页面
  • 研究下CSS3的background-size属性
  • 解决服务器80端口监听异常导致无法打开和访问网站的问题
  • 解决VS2013错误:Page '312e8a59-2712-48a1-863e-0ef4e67961fc' not found.

友情链接

  • Passingwind的博客
  • 码友网

知识共享许可协议 CC BY-SA 4.0本站作品采用知识共享许可协议:署名-相同方式共享 4.0 国际(CC BY-SA 4.0)。
闽ICP备15003702号
闽公网安备 35020302035102号