2011-11-14 41 views
0

我有这样的代码在控制器MVC 2 RedirectToAction

public ActionResult Close(string cName) 
{ 
    return RedirectToAction("action1", "Home", 
          new { IdsName = cName }); 
} 

,但正在创建已%20(空间),被这样

http://localhost:xxxx/Home/action1.mvc?IdsName = xyz%20%20asd 

创建它的网址,但我想要的网址是这样的

http://localhost:xxxx/Home/action1.mvc?IdsName = xyz asd 

我想要一个空间而不是%20。我怎样才能做到这一点?

谢谢

回答

0

%20是url编码的空格字符。空格字符在uri中不是有效的字符,因此MVC框架为您编码值。

当您的Home/Action1方法被调用时,该值将被url解码(通过MVC框架)再次包含空格字符。

+0

那么如何编码我的网址是预期的方式? – user1005310

+2

@ user1005310'预期'的方式不是一个有效的URI,如果你试图告诉浏览器重定向到一个无效的URI,它将无法工作。 –