2016-08-17 117 views
0

我做了一个网站,我想发送邮件给用户。asp.net网站urlencode

我使用URL路由,如果我使用这样

localhost:1186/activate/[email protected] 

我得到了,因为点的迹象IIS服务器错误。但如果我不这样使用,我无法从浏览器完全获取此电子邮件地址。 我想在这个电子邮件地址的特殊字符必须转换为html实体。

@ sign。(dot)sign and all。 我想使用它,但无法正常工作

string email = "[email protected]"; 
string nemail = HttpUtility.UrlEncode(email); 

返回像

johndoe%40john.doe.com 

,但它必须返回这样

johndoe%40john(dotsignconvertedchars)doecom 

不能转换为点的迹象...

帮我

+0

我认为在urlencodeing之后,为什么不用你想要的所有点代替nemail.Replace(“。”,“(dot)”);这会给你johndoe @ john(dot)com –

回答

0

我觉得urlencodeing你为什么不换成你想要什么都为如

nemail.Replace(".","‌​(dot)"); 

所有的点,这将使你JOHNDOE%40john(点)的COM

然后reciving后后更换回

nemail=nemail.Replace("(dot)","."); 
nemail=HttpUtility.UrlDecode(nemail);