gpt4 book ai didi

c# - MVC3 Razor - Response.Write Substitution 总是在页面顶部显示我的文本

转载 作者:太空狗 更新时间:2023-10-29 21:46:01 24 4
gpt4 key购买 nike

.亲爱的开发人员 :)

我正在学习 ASP.NET MVC3,但在使用 Response.WriteSubsitution() 方法时卡住了。

每次我尝试在页面中使用它时,替换文本总是出现在页面顶部 ( screenshot here )。

考虑到我的 Controller 中有以下代码:

public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.Message = "Welcome to ASP.NET MVC!";
return View();
}

[OutputCache(Duration=20)]
public ActionResult About()
{
ViewBag.Date = DateTime.Now;
return View();
}
}

About.cshtml 中的代码:

@using MvcApplication1;
@{
ViewBag.Title = "About Us";
}

<h2>About</h2>
<p>
Date : @ViewBag.Date<br />
Random Substitued number : @{ Response.WriteSubstitution(MvcApplication1.Helpers.Test); }
</p>

我的助手类:

namespace MvcApplication1
{
public static class Helpers
{
public static string Test(HttpContext context)
{
Random r = new Random();
return r.Next(0, 10).ToString(CultureInfo.InvariantCulture);
}
}
}

我错过了什么吗?

谢谢!

编辑解决方案:

我用@Darin Dimitrov 的解决方案解决了这个问题。

对于和我情况相同的人,这是我的新代码。

我的 Controller :

[DonutOutputCache(Duration = 10)]
public ActionResult About()
{
ViewBag.Date = DateTime.Now;
return View();
}

public string RandomNumber()
{
Random r = new Random();
return r.Next(0, 10).ToString(CultureInfo.InvariantCulture);
}

MvcDonutCaching 实现了我们必须使用的类 DonutOutputCacheAttribute,而不是内置的 OutputCacheOutput。

我的看法:

@using MvcApplication1;
@{
ViewBag.Title = "About Us";
Layout = "~/Views/Shared/Mobile/Layout.cshtml";
}

<h2>About</h2>
<p>
Date : @ViewBag.Date<br />
Random Substitued number : @Html.Action("RandomNumber", true)
@Side
</p>

包重载了Html.Action方法来控制缓存:)

感谢所有提供此主题的人。

最佳答案

I'm learning ASP.NET MVC3 and I'm stuck when I use Response.WriteSubsitution() method.

忘记 ASP.NET MVC 3 中的这个方法作为 Phil Haack explains .根本不要使用它。如果您想在 ASP.NET MVC 3 中实现 donut 缓存,该框架没有可以为您提供。

third party packages如果您不想自己推出,可以启用此功能。

关于c# - MVC3 Razor - Response.Write Substitution 总是在页面顶部显示我的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11249345/

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