c# - ASP.Net MVC : Localized texts with new line?

标签 c# asp.net-mvc asp.net-mvc-3 razor localization

我有一个将本地化的 Asp.Net MVC 3 网站。

我有几个包含我的文本的 resx 文件,并且我有一些观点

@My.NameSpace.Through.My.LocalizationFile.Key

但我不能让它代表新行。

我试过:

  • Shift+enter:我在资源文件中找到了新行,但在我的浏览器中没有
  • \r\n :我在浏览器中看到了\r\n
  • \n : 相同
  • <br/> : 我看到 <br/>在我的文字中

那么换行应该怎么做呢?

编辑:我知道我可以使用 Html.Raw,但我不能要求翻译人员在他们的翻译中加入 html 代码。

最佳答案

老实说,我知道这不是世界上最好的事情,但它是万无一失的,这意味着您的翻译人员不必在他们的翻译中放入任何代码:

基于已经给出的答案,你为什么不直接使用 Html.Raw , 但在这样做之前,替换 \r\n在资源文件中使用 Shift+Enter 会导致 <br />

比如说你有一个名为 Welcome 的字符串在资源文件中 ApplicationMessage ,你可以这样做:

@Html.Raw(ApplicationMessage.Welcome.Replace("\r\n", "<br />")

这会给你你所需要的。这是一个类似的问题:

HTMLencode HTMLdecode

关于c# - ASP.Net MVC : Localized texts with new line?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10107566/

相关文章:

c# - 在 Razor View 中使用 "nameof"运算符

asp.net-mvc-3 - StringLength 属性行为

c# - 如何将 double 舍入到预定义列表中最接近的最高值?

C# 如何能够像 TeXT 一样放置 "text"并且它仍然运行 If

c# - Volatile 关键字和实例属性的锁定

c# - ObservableCollection 不更新 View

javascript - 查看源代码: having the incorrect JSON rendering ToString() C# MVC

ios - IOS 浏览器上的只读日期字段?

asp.net-mvc-3 - 如何初始化授权信息

c# - 在 ASP.Net MVC3 中使用 OpenID,我从哪里获取用户数据?