use*_*358 9 .net asp.net-mvc inheritance
我正在考虑为我正在使用的整个MVC 4项目使用基本控制器.我在网上发现了相互矛盾的观点,并不确定它是否违反最佳做法,或者仅仅是个人偏好问题.
这是一个stackoverflow帖子,说不要这样做
这篇 文章已经展示了如何做到这一点,就像没有它的有害影响一样.在这里和这里,他们解释了它的用法,没有人真正指出这是不好的做法,或者可能导致任何问题.
那么在MVC 4项目中使用几个基本控制器的观点究竟是什么呢?好?坏?
编辑
我还想指出,我使用基本控制器的直接目标是,我可以在一个控制器中完成授权,这样所有控制器都不需要具有Authorize属性.我将为每个角色创建单独的基本控制器.由于角色永远不会改变,我永远不需要为另一个角色创建另一个基本控制器.您如何看待这种设计控制器的方式?
谢谢你的时间.
我之前在处理诸如重写主体之类的事情时使用过基本控制器User(请参阅此处,了解我描述这个想法的一个老问题:Is this Custom Primary in Base Controller ASP.NET MVC 3 terribly inefficient?)。
老实说,我想不出更好的方法来做到这一点,所以我觉得在这种情况下使用基本控制器可能是一件好事。
我可能不会为不同的授权角色使用不同的基本控制器,因为它相当简单(并且代码较少),只是用来装饰控制器,[Authorize(Roles="whatever")]并且更容易准确地看到正在发生的情况。
可能值得考虑自定义AuthorizeAttribute。
| 归档时间: | 
 | 
| 查看次数: | 13147 次 | 
| 最近记录: |