我有一个带各种控制器的asp.net核心应用程序。
我现在想添加一个中央功能,例如访问日志(将一些信息存储在SQL数据表中)。
这可以通过中央函数和会话变量上的一些逻辑来完成,但是然后,必须从每个可能的入口点(控制器函数)调用该函数,这是不好的。
编辑:
@ Y.Y。的提示(作为评论)很有用。
中央功能中的以下代码:
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
包含在Startup.cs中
app.Use(async (context, next) =>
{
await ZF.CheckHilfstabellenAsync();
await next.Invoke();
});
其中ZF.CheckHilfstabellenAsync();是我的主要职责
似乎可以完成工作...(似乎现在每个控制器调用都将调用它。)
但是,我现在必须详细研究它(尤其是关于性能和可能的副作用)。
我不确定这是否是个好主意(因为我也有使用JS进行Ajax调用,因此不应调用该函数)...
但是..这似乎回答了我的问题(可能的解决方案)