gpt4 book ai didi

c# - ViewData 中的 HTML 标记呈现问题?另外,MVC 中的 MultiView 功能?

转载 作者:太空宇宙 更新时间:2023-11-03 18:17:57 25 4
gpt4 key购买 nike

我正在尝试使用 html 标记填充 ViewData 实例,如下所示。当页面呈现时,html 标签呈现为文本而不是 html 标记。有人知道为什么吗?

Controller 代码:

if (user.ActivationStatus == false)
{
...
ViewData["Message"] = "<p>Your account has been activated, you're good to go.</p>";
}
else
{
ViewData["Message"] = "<p>Sorry, this account has already been activated.</p>";
}
return View();

查看代码:

<h2>Confirmation</h2>
<p><%: ViewData["Message"] %></p>

其次,我过去曾在 asp.net webforms 中使用过 MultiView 功能。此功能非常理想,并且喜欢在 MVC 中实现类似的功能。

有什么方法可以根据函数结果(如上面的“if”语句)从 Controller 代码调用不同的 PartialView 到 View 中的占位符?

最佳答案

<%: %> == Html.Encode(ViewData["Message"]);是 HTML 编码你的字符串......

试试这个:

<%= ViewData["Message"]%>

此外,您应该能够使用 ViewData 控制部分控件并取决于 ViewData 中的值你可以渲染不同的部分。您还可以将您的 View 强类型化为一个模型,该模型代表您在页面上之后的行为...

关于c# - ViewData 中的 HTML 标记呈现问题?另外,MVC 中的 MultiView 功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3487645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com