如何将存储在字符串变量中的HTML代码传递给MVC 5中的视图?
我有一个像这样定义的动作:
public ActionResult TempOutput(string model)
{
return View((object)model);
}
我也有它的观点,这是这样定义的:
@model String
@{
ViewBag.Title = "TempOutput";
}
<h2>TempOutput</h2>
@Model
而且,在我的代码中的一个地方,我用下面这行代码调用操作方法和视图:
return RedirectToAction("TempOutput", "SEO", new { model = tmpOutput });
重点是,当我有一个短的字符串时,它工作正常,但在我的情况下,tmpOutput是一个字符串变量,它包含一个长的HTML代码。 问题是我想在我的视图中传递HTML代码,但我不希望它显示为普通文本,但我希望它被解析为HTML代码并更改视图。 目前,当我运行代码时,出现错误消息:
请求过滤模块被配置为拒绝查询字符串太长的请求。
我该如何解决这个问题?
你的情况中的问题是redirecttoaction
会产生一个新的(302)http请求,你发送的'model'
将被发送querystring,querystring有一个限制,然后尝试使用TempData
作为:
TempData["mydata"] = tmpOutput ;
然后在TempOutput
操作中检索TempData
值,或者直接在View中使用它,如图所示。
查看:
<div>@Html.Raw(TempData["mydata"])</div>
链接地址: http://www.djcxy.com/p/42115.html
上一篇: How can I pass HTML code stored in a string variable to a view in MVC 5?