博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net怎样在URL中使用中文、空格、特殊字符
阅读量:5815 次
发布时间:2019-06-18

本文共 1000 字,大约阅读时间需要 3 分钟。

在cshtml或aspx/ascx中制作链接时,若参数可能是中文,则需要使用HttpUtility.UrlEncode():

 
  1.  
  2. [html] view plaincopy  
  3. 01.@Html.Link("角色", "/SFC/Users/Users2Roles?user=" + HttpUtility.UrlEncode(User.Identity.Name))    

而在对应的Action中,一切照常,不需要"Decode”(也有帖子说需要,但本人实验的结果是不需要):

 
  1.  
  2. html] view plaincopy  
  3. 01.public ActionResult Users2Roles(string user)    
  4. 02.{    
  5. 03.    ViewBag.User = user;    
  6. 04.    return View(SFCRoles.GetAllRoles());    
  7. 05.}    
  8. 06.[HttpPost]    
  9. 07.public ActionResult Users2Roles(string user, FormCollection collection)    
  10. 08.{    
  11. 09.    ViewBag.User = user;    
  12. 10.    
  13. 11.    try    
  14. 12.    {    
  15. 13.    }    
  16. 14.}    
此外还能解决类似空格和特殊字符的问题,比如当你想让一个页面关闭后回到另外一个页面,而另外一个页面的链接中偏偏有两个以上参加就,因此里边有个“&”,就可以:使用:

 

 
  1.  
  2. [html] view plaincopy  
  3. 01.@Html.Link("x", "/SFC/Categories/Delete?rootID=" + root.ID + "&id=" + Model.ID, showInNewWindow:false, returnUrl: HttpUtility.UrlEncode(Request.Url.ToString()))    

这个Html.Link是我自己编写的Helper,如果直接用a,也一样可以。

但是这么写来写去毕竟太长了太麻烦了,所以如果经常使用returnUrl请参考我另外一个帖子: 在最后几行2011-08-18的补充。两个问题居然碰到一起了。

 

可参考:

 (StackOverflow上面所有类似的问题)

本文转自火星人陈勇 51CTO博客,原文链接:http://blog.51cto.com/cheny/1100221

转载地址:http://woqbx.baihongyu.com/

你可能感兴趣的文章
7zZip zip RAR iOS
查看>>
date命令的详细用法!
查看>>
UiAutomator源码分析之UiAutomatorBridge框架
查看>>
python 开发之selenium
查看>>
Xcode3.2.5中找不到Mac OS X - Command Line Utility -...
查看>>
css的div垂直居中的方法,百分比div垂直居中
查看>>
如何理解EM算法
查看>>
nginx 域名跳转一例~~~(rewrite、proxy)
查看>>
linux用户家目录无损迁移到独立硬盘
查看>>
文件查找
查看>>
shell编程前言(一)
查看>>
5、centos7.*配置yum的EPEL源及其它源
查看>>
JSON前后台简单操作
查看>>
shell中一些常见的文件操作符
查看>>
CentOS 7 装vim遇到的问题和解决方法
查看>>
JavaScript基础教程1-20160612
查看>>
使用第三方类、库需要注意的正则类RegexKitLite的使用
查看>>
iOS \U7ea2 乱码 转换
查看>>
FCN图像分割
查看>>
ios xmpp demo
查看>>