Я получил контроллер ASP.NET MVC, как это
[Authorize]
public class ObjectController : Controller
{
public ObjectController(IDataService dataService)
{
DataService = dataService;
}
public IDataService DataService { get;set;}
}
Атрибут Authorize определен как «Inherited = true» в платформе. Поэтому, когда я делаю следующий контроллер:
public class DemoObjectController : ObjectController
{
public DemoObjectController(IDataService dataService)
: base (dataService)
{
DataService = new DemoDataService(DataService);
}
}
Он получает атрибут авторизации, но я не хочу его здесь. Я хочу, чтобы контроллер Demo Object был доступен каждому, потому что он просто использует поддельные данные.
Полагаю, я реализую свой собственный атрибут Authorize, который не наследуется, поскольку я не могу найти способ удалить атрибут из унаследованного класса.