始终输出特定的HTML
本文关键字:HTML 输出 | 更新日期: 2023-09-27 18:25:51
我正面临ASP.NETMVC的问题。我正在研究一种技术,使会话在死亡(过期)后可以恢复。为了使这种技术发挥作用,我需要一种能够在调用控制器的操作方法后写入响应的方法。
哪种方法是最好的?是否有此操作筛选器?
如果要使用基于属性的方法,请从ActionFilterAttribute派生并重写OnActionExecuted(在执行操作之后但在执行结果之前运行)或OnResultExecuted。
如果不按属性的方式进行,请实现IActionFilter或IResultFilter并实现上面提到的方法。
您可以分别通过filterContext.HttpContext.Response.Output
或filterContext.HttpContext.Response.OutputStream
访问输出编写器/输出流。
创建一个将在执行操作后发生的筛选器,如下所示:
using System;
namespace Sample
{
[AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
public class SampleFilter : ActionFilterAttribute
{
public override void OnActionExecuted(ActionExecutedContext filterContext)
{
base.OnActionExecuted(filterContext);
}
}
}
然后像这样装饰你的动作:
[SampleFilter]
public virtual ActionResult Index()
{
return View();
}