C# 禁用自动用户输入消毒

C# 禁用自动用户输入消毒,c#,asp.net,razor,user-input,sanitization,C#,Asp.net,Razor,User Input,Sanitization,我正在设置一个新的ASP.NET服务器,并希望输入来自我自己的筛选方法结果的HTML,因为我已经在使用我自己的筛选方法。但是使用@会使用ASP.NET的清理方法自动清理代码,我不希望这样 我曾尝试在我的Razor页面中使用@符号来使用C#,但它一直使用ASP.NET的清理方法 公共字符串GetFormattedName(字符串名称) { //清理用户输入 返回name.Replace(“尝试强制转换到IHtmString 呈现为: <h3>@Html.Raw(Model.GetFor

我正在设置一个新的ASP.NET服务器,并希望输入来自我自己的筛选方法结果的HTML,因为我已经在使用我自己的筛选方法。但是使用
@
会使用ASP.NET的清理方法自动清理代码,我不希望这样

我曾尝试在我的Razor页面中使用
@
符号来使用C#,但它一直使用ASP.NET的清理方法

公共字符串GetFormattedName(字符串名称)
{
//清理用户输入

返回name.Replace(“尝试强制转换到IHtmString

呈现为:

<h3>@Html.Raw(Model.GetFormattedName("<strong class="bold-tag">etc</strong>"))</h3>
@Html.Raw(Model.GetFormattedName(“etc”)

尝试转换为IHtmString

呈现为:

<h3>@Html.Raw(Model.GetFormattedName("<strong class="bold-tag">etc</strong>"))</h3>
@Html.Raw(Model.GetFormattedName(“etc”)
只需使用

请尝试以下示例:

<h3>@Html.Raw(@"<strong class=""bold-tag"">etc</strong>")</h3>
@Html.Raw(@“etc”)
应呈现为:

<h3>@Html.Raw(Model.GetFormattedName("<strong class="bold-tag">etc</strong>"))</h3>
etc
只需使用

请尝试以下示例:

<h3>@Html.Raw(@"<strong class=""bold-tag"">etc</strong>")</h3>
@Html.Raw(@“etc”)
应呈现为:

<h3>@Html.Raw(Model.GetFormattedName("<strong class="bold-tag">etc</strong>"))</h3>
etc

事实上,我想我可以将其转换为
IHtmlString
。Ref:事实上,我想我可以将其转换为
IHtmlString
。Ref:谢谢,但我刚刚编辑了我的问题以获取更多信息,因为我不想要默认的消毒方法。我已经有了自己的方法,可以添加颜色,所以消毒方法会毁掉它。正如我现在可以看到,它正在使用我的消毒方法,然后对它进行解码,最后使用ASP.NET的消毒方法,它去除了我的颜色。谢谢,但我刚刚编辑了我的问题以获取更多信息,因为我不想要默认的消毒方法。我已经有了自己的方法,可以添加颜色,所以消毒方法不会改变uld会毁了它。正如我目前所看到的,它正在使用我的消毒方法,然后对它进行解码,最后使用ASP.NET的消毒方法,它去掉了我的颜色。