C# 如何将存储在字符串变量中的HTML代码传递给MVC5中的视图?

C# 如何将存储在字符串变量中的HTML代码传递给MVC5中的视图?,c#,asp.net-mvc,C#,Asp.net Mvc,我有一个动作定义如下: public ActionResult TempOutput(string model) { return View((object)model); } 我也有它的观点,定义如下: @model String @{ ViewBag.Title = "TempOutput"; } <h2>TempOutput</h2> @Model 关键是,当我有一个短字符串时,它可以正常工作,但在我的例子中

我有一个动作定义如下:

    public ActionResult TempOutput(string model)
    {
        return View((object)model);
    }
我也有它的观点,定义如下:

@model String

@{
    ViewBag.Title = "TempOutput";
}

<h2>TempOutput</h2>

@Model
关键是,当我有一个短字符串时,它可以正常工作,但在我的例子中,tmpOutput是一个字符串变量,它包含一个长HTML代码。问题是,我希望在视图中传递HTML代码,但我不希望它显示为普通文本,而是希望它被解析为HTML代码并更改视图。目前,当我运行代码时,会收到一条错误消息,上面说:

请求过滤模块配置为拒绝请求,其中 查询字符串太长


如何解决此问题?

您的问题是
重定向到操作
发出一个新的(302)http请求,您发送的
'model'
将使用querystring发送,querystring有一个限制,然后尝试使用
TempData
作为:

TempData["mydata"] = tmpOutput ;
然后在
TempOutput
操作中检索
TempData
值,或直接在视图中使用它,如图所示

视图:

<div>@Html.Raw(TempData["mydata"])</div> 
@Html.Raw(TempData[“mydata”])

您能给我完整的代码示例吗?我需要更改什么?在您的视图中使用@Html.Raw(TempData[“mydata”])。@这很酷!我对MVC很陌生。你是说在使用这种方法时,我能够将原始html coe发送到页面吗?是的..然后html.raw将把字符串编码为视图中所需的html..@Dean.DePue
<div>@Html.Raw(TempData["mydata"])</div>