Ответ 1
Пример того, как вы можете это сделать в MVC 6
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.ConfigureMvc(options =>
{
options.Filters.Add(new YouGlobalActionFilter());
}
}
Я пытаюсь зарегистрировать фильтр в простом приложении mvc. Я даже не написал ничего еще за пределами основного фильтра для тестирования. Я использую VS 2015 RC, и я создал начальное приложение, перейдя в новый проект → Web-приложение Asp.net → Web API. Проблема, с которой я сталкиваюсь, заключается в том, что я не могу найти способ зарегистрировать фильтр по всему миру.
Из более ранних версий MVC я вижу GlobalFilters.Filters
, но когда я пытаюсь использовать это в новой структуре, он говорит мне, что GlobalFilters не может быть найден. В предыдущих версиях он жил в System.Web.MVC, но я больше не вижу этого в своих ссылках, и я не могу найти его нигде.
Кажется, это должно быть очень просто, но пока я не нашел способ сделать это.
Здесь мой project.json
{
"webroot": "wwwroot",
"version": "1.0.0-*",
"dependencies": {
"Microsoft.AspNet.Mvc": "6.0.0-beta4",
"Microsoft.AspNet.Server.IIS": "1.0.0-beta4",
"Microsoft.AspNet.Server.WebListener": "1.0.0-beta4",
"Microsoft.AspNet.StaticFiles": "1.0.0-beta4"
},
"commands": {
"web": "Microsoft.AspNet.Hosting --server Microsoft.AspNet.Server.WebListener --server.urls http://localhost:5000"
},
"frameworks": {
"dnx451": {
"frameworkAssemblies": {
}
},
"dnxcore50": { }
},
"exclude": [
"wwwroot",
"node_modules",
"bower_components"
],
"publishExclude": [
"node_modules",
"bower_components",
"**.xproj",
"**.user",
"**.vspscc"
]
}
Пример того, как вы можете это сделать в MVC 6
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc();
services.ConfigureMvc(options =>
{
options.Filters.Add(new YouGlobalActionFilter());
}
}
С Beta 8 теперь это делается через AddMvc следующим образом:
services.AddMvc(options =>
{
options.Filters.Add(new YouGlobalActionFilter());
});