【发布时间】:2019-02-25 23:30:12
【问题描述】:
我在每次点击页面时都会将用户的审核记录到数据库中,我认为在中间件中这样做是可以接受的(很好吗?),因为它会在每个 HTTP 请求上触发。但是,当我进入新页面时,中间件 (userService.AddUser()) 中的代码被点击了 3 次,我不确定为什么。
代码如下:
public void Configure(IApplicationBuilder app, IHostingEnvironment env, IUserService userService)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseCookiePolicy();
app.UseAuthentication();
// My own code.
app.Use(async (context, next) =>
{
// The database insert
userService.AddUser();
await next.Invoke();
});
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}
}
我可能缺少一些关于为什么这不起作用的知识。
谢谢
【问题讨论】:
-
每次调用时检查 URL,它可能是您应用的不同部分。
-
你是对的。加载图像时出现 404 错误。谢谢
标签: asp.net-core .net-core middleware