ASP.NET Core支持在视图中使用依赖注入。
使用@inject指令将服务注入到视图中。
比如添加一个日志帮助的类
LogHelperService.cs
namespace FirstCoreMVC.Core
{
public class LogHelperService
{
public void Add()
{
}
public string Read()
{
return "日志读取";
}
}
}Code language: JavaScript (javascript)
StartUP里面注册依赖注入项目
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc(
options => {
options.Filters.Add(typeof(TestActionFilter));//添加了一个全局过滤i其
}
);
services.AddTransient<LogHelperService>();
}Code language: JavaScript (javascript)
在视图中使用
首先引入对象
@inject LogHelperService logHelperServiceCode language: CSS (css)
然后再视图里面 就可以使用这个对象了
不需要我们去new
@{
logHelperService.Add();//没有返回值的方法 则需要在代码块里面调用
}
@logHelperService.Read()Code language: JavaScript (javascript)
Previous: 34-控制器和Action级别的过滤器
Next: 36-控制器中使用依赖注入