Asp.net 使用TempData传递html?[MVC2]

Asp.net 使用TempData传递html?[MVC2],asp.net,asp.net-mvc-2,Asp.net,Asp.net Mvc 2,我最近发现TempData在处理控制器中的逻辑后将消息传递回视图。但是当我尝试传递带有消息的html时,它呈现的是实际的标记,而不是在页面呈现时将它们解释为html 有没有办法解决这个问题,或者我的方法有缺陷 TempData["Message"] = "<span style='color:red;'>There was a problem moving the files.</span>"; TempData[“Message”]=“移动文件时出现问题。”; 以下

我最近发现TempData在处理控制器中的逻辑后将消息传递回视图。但是当我尝试传递带有消息的html时,它呈现的是实际的标记,而不是在页面呈现时将它们解释为html

有没有办法解决这个问题,或者我的方法有缺陷

TempData["Message"] = "<span style='color:red;'>There was a problem moving the files.</span>";
TempData[“Message”]=“移动文件时出现问题。”;
以下是浏览器中显示的内容:

<span style='color:red;'>There was a problem moving the files.</span>
移动文件时出现问题。

谢谢

我认为可能是自动编码值;您应该能够调用Server.HtmlDecode将其解码回HTML


HTH.

我认为可能是自动编码值;您应该能够调用Server.HtmlDecode将其解码回HTML


HTH.

使用
使用
您可以更改“视图”文件中的样式,如下所示:

@if (TempData["Message"] != null)
     {
      <span style="color:Red;">  @TempData["Message"] </span>
}
@if(TempData[“Message”!=null)
{
@TempData[“消息”]
}

您可以更改“视图”文件中的样式,如下所示:

@if (TempData["Message"] != null)
     {
      <span style="color:Red;">  @TempData["Message"] </span>
}
@if(TempData[“Message”!=null)
{
@TempData[“消息”]
}

您可以在TempData中解码html,如下所示:

@Html.Raw(TempData["Message"].ToString())

您可以在TempData中解码html,如下所示:

@Html.Raw(TempData["Message"].ToString())

你只说明了问题的一面。真正有启发性的部分是提取并显示数据的部分。你能展示一下代码吗?不,我用的是TempData。在视图方面,我只是在做:,但是基思让我把它改成了,一切都很好!你只说明了问题的一面。真正有启发性的部分是提取并显示数据的部分。你能展示一下代码吗?不,我用的是TempData。在视图方面,我只是在做:,但是基思让我把它改成了,一切都很好!警报:空引用例外先检查空引用。与下面的答案类似:null引用异常首先检查null。我喜欢下面的答案