在 ASP.NET Razor 中格式化字符串

2024-01-06

我目前正在 ASP.NET 中编写一个小型模板系统,以允许用户添加内容。例如,用户可以输入字符串(变量类型为字符串)。

topHeader[x] = "They think it's all over. It is now!";

但是,需要进行的一项更改是能够在此内容中添加一些基本 HTML 标记,因此可以执行以下操作

topHeader[x] = "They think it's all over. <strong>It is now!</strong>";

or

topHeader[x] = "They think it's all over. <a title="Football News" href="URL">It is now!</a>";

如果你现在将这些东西添加到字符串中,它们不会被格式化为 HTML,但我想以某种方式转义它们,以便它们可以。当然,我在互联网上寻找答案,但由于 Razor 相当新,所以没有太多可以帮助我的。

有人知道如何做到这一点吗?


您需要创建一个IHtmlString http://msdn.microsoft.com/en-us/library/system.web.ihtmlstring.aspx保存您的 HTML 源代码的实现。

Razor 计划有一个辅助方法来为您执行此操作,但是,据我所知,它还没有,所以我相信您需要创建自己的类来实现该接口并从GetHtmlString()方法。
EDIT: 您可以使用HtmlString class.

您可以更改您的topHeader字典要持有IHtmlStrings 而不是Strings,或者您可以按原样保留代码,但将其包装在HtmlString在剃刀视图中:

<tag>@new HtmlString(topHeader[x])</tag>

确保正确转义所有非 HTML 特殊字符。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 ASP.NET Razor 中格式化字符串 的相关文章

随机推荐

  • mongoid 更新数组中的元素

    我正在将 mongoid 3 1 与 Ruby 1 9 3 结合使用 并尝试更新数组中的值 我可以在 mongodb 的 CLI 中成功执行以下命令 但似乎找不到适用于 mongoid 的解决方案 翻译 user update activi
  • 是否存在与堆内存分配相关的内存开销(例如堆中的标记)?

    特别是在 Windows 上使用最新的 Visual Studio C 编译器来考虑 C 我想知道heap执行 假设我使用的是发布编译器 并且我不关心内存碎片 打包问题 是否存在与在heap 如果是这样 每个分配大约有多少字节 会不会更大一
  • λProlog 拒绝假设推理查询?

    我怀疑 Prolog 的主要实现 teyjus 可能有点废弃软件 但 Prolog 是一个令人着迷的 Prolog 它应该让你使用高阶逻辑 假设推理和其他东西 这就是为什么我试图用它 文件 example sig sig example k
  • 使用 NSAlert 处理按下哪个按钮的正确方法是什么

    我已经添加了两个按钮NSAlert对象 目前按钮一的返回码是1001 并且按钮默认为1000 我需要有效地确定按下给定警报中的哪个按钮 而无需使用幻数 否则会变得混乱 void showErrorMessage NSString error
  • Cloudfoundry 是否支持需要更大内存的应用程序?

    我一直在使用 grails 开发一个网站并使用 Cloudfoundry 对其进行演示 Grails 和 Cloudfoundry 太棒了 在 STS 中 grails 插件和工具的支持下 它们易于使用 我的应用程序使用 MySQL Mon
  • 用 Javascript 对象替换窗口或文档对象

    有没有办法替换 窗口 或 文档 对象 我基本上想要的是提供某种 JavaScript 代理 我想防止用户在页面上获取 一些 只有一些 这很重要 DOM 元素 我所说的 用户 是指任何第三个小馅饼脚本 我可以做这个 document getE
  • VBA 正则表达式中的后向查找?

    有没有办法在 VBA 正则表达式中进行负向和正向向后查找 如果字符串以 A 开头 我不想匹配 所以我目前正在模式的开头执行 A 然后删除 match 0 的第一个字符 显然不是最好的方法 我正在使用 regExp 对象 VBA 提供前瞻 正
  • 计算移动设备实际行驶的距离[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我想计算移动设备 iOS 和 Android 实际行驶的距离 我知道通过谷歌地图API 我们可以找到2个坐标之间的最佳路线距离 但我想
  • 如何对给定点之间的直线的所有像素位置进行采样?

    我正在做一个项目 其中包括画一条线 但是 最重要的是我需要在每个 X 位置上获取 Y 位置 因此 对于每个 X 我都需要一个 Y 当我缓慢绘制时 绘制一条线并获取位置效果很好 但是当我更快地移动光标时 即使绘制了线 也不会保存每个 X 的位
  • Python 中的凯撒密码函数

    我正在尝试在 Python 中创建一个简单的凯撒密码函数 该函数根据用户的输入移动字母 并在末尾创建一个最终的新字符串 唯一的问题是 最终的密文仅显示最后一个移位的字符 而不是包含所有移位字符的整个字符串 这是我的代码 plainText
  • 使用 jest 模拟 aws-sdk S3#putObject 实例方法

    对于包含以下内容的源代码 const S3 require aws sdk s3 clients const s3 new S3 s3 putObject params callback 我添加了以下模拟基于本文 https faceboo
  • 是否可以在 php 中更改 $_['http_referer'] ? [复制]

    这个问题在这里已经有答案了 可能的重复 PHP 引用重定向脚本 https stackoverflow com questions 857427 php referer redirect script 例如 我希望制作改变浏览器 http
  • 为什么android sdk中默认的proguard配置使用keep *注释*

    android sdk默认的proguard配置中有一行 keepattributes Annotation 根据 Proguard 手册 这一行等于 keepattributes RuntimeVisibleAnnotations Run
  • Excel VBA 工作表和文本框中的日期出现错误

    我住在澳大利亚 我们使用 d mm yyyy 日期格式 我正在尝试在 Excel 中使用 VBA 创建一个用户窗体 它将读取单元格 A1 并将其显示在文本框中 然后 用户可以在另一个文本框中输入日期并将该日期设置回单元格 A1 我遇到的问题
  • 用于管理推送通知的 iOS API

    这个可能性不大 但是是否有任何公共 或私有 API 允许我们读取 iOS 设备上现有的推送通知 例如 在后台运行的应用程序是否可以每隔 X 秒轮询一次系统 以确定设备是否已收到来自 Stack Exchange 应用程序的推送通知并获取其内
  • boost::program_options - 如何处理 INI 文件中具有相同名称的多个部分

    在如下配置中 有没有办法处理各个部分 我正在寻找一种以可靠的方式验证下面各个 服务器 部分的方法 basic number of servers 3 server ip 10 20 30 40 password sdfslkhf serve
  • 在 AngularJS 中对 ui.router 的解析执行 $http get 请求可以吗?

    我有以下代码 如下 它们非常适合我并且至少满足我的需要 但我对此有点怀疑 我有一种感觉 这太好了 令人难以置信 因为我正在挣扎 http的异步行为这对我使用来自的响应对象有很大帮助 http在控制器上全局请求 我只是想知道它是否是正确的方法
  • InkWell 小部件需要 Material 小部件祖先

    我在 Row 中添加 InkWell 作为小部件 但它抛出了一个错误 flutter EXCEPTION CAUGHT BY WIDGETS LIBRARY flutter The following assertion was throw
  • 在 eclipse 的 toplink 中显示生成的 SQL

    我在 eclipse 中使用 EclipseLink 库 在开发时 并部署在 TopLink 上 我需要显示生成的 sql 语句 我正在使用以下 persistence xml
  • 在 ASP.NET Razor 中格式化字符串

    我目前正在 ASP NET 中编写一个小型模板系统 以允许用户添加内容 例如 用户可以输入字符串 变量类型为字符串 topHeader x They think it s all over It is now 但是 需要进行的一项更改是能够