背景
我在LinkedIn上有一个网址,其标题参数为:some title
。
为了能够将此标题添加到URL,空格需要被%20替换,但显然LinkedIn Share需要双重编码,因此%
也需要编码。 / p>
这意味着空格变为%2520
。
如果我手动更正我的网址,则会在我的LinkedIn上分享。
什么可行?
进一步思考以上内容,我会得到一个LinkedIn分享网址:
https://www.linkedin.com/cws/share?url=http://example.com/entity/1?title=Some%2520title
这样可行。
然而
在我的网页上,我正在使用MVC Razor,显然HTML.Raw()将%2520
解码回%20
,这将是不正确的。
问题
以正确的方式打印所需网址的最佳方法是什么?
答案 0 :(得分:2)
之前我在一个新闻门户网站工作,我们创建了一个Helper方法,用字母替换字符串中的任何空格以便共享以避免这个问题,我认为这是一个很好的快速解决方案
public static string RemoveSpaceFromTitle(this string text)
{
if (string.IsNullOrWhiteSpace(text))
return text;
return text.Replace(" ", "_");
}