使用 MVC Razor 优化包含共享空间LinkedIn网址的最佳方法是什么?



Background

我有一个 url 可以在LinkedIn上共享,带有标题参数:some title .

为了能够将此标题添加到 URL,空格需要替换为 %20,但显然LinkedIn共享需要双重编码,因此%也需要编码。

这意味着空间变得%2520 .

如果我像这样手动更正我的网址,它会在我的LinkedIn上共享。

什么会起作用

进一步考虑上述内容,我会得到一个LinkedIn共享网址,如下所示:

https://www.linkedin.com/cws/share?url=http://example.com/entity/1?title=Some%2520title

这将起作用。

然而

在我的网页上,我使用的是MVC Razor,显然是HTML。Raw() 将%2520解码回 %20 ,这将是不正确的。

问题

以正确的方式打印所需 URL 的最佳方法是什么?

我之前在新闻门户工作,我们创建了一个 Helper 方法,用下划线替换字符串中的任何空格以进行共享,以避免这个问题,我认为这是一个很好的快速解决方案

public static string RemoveSpaceFromTitle(this string text)
{
    if (string.IsNullOrWhiteSpace(text))
       return text;
    return text.Replace(" ", "_");
}

相关内容

最新更新