Pra*_*kur 6 asp.net-mvc asp.net-mvc-4
当我更改控制器类的访问修饰符时,会导致错误.如果我使操作方法的可访问性非公开,那么它也会导致错误(特别是页面未找到错误).为什么会这样?
默认情况下,如果您没有为类指定任何访问修饰符,那么它将默认为internalC#.只有同一程序集中的代码才能访问该类internal.因此,如果您的控制器是internal,那么在收到请求时创建控制器实例的代码必须在您的程序集中.
但是控制器创建代码存在于System.Web.Mvc程序集中,默认情况下DefaultControllerFactory负责创建控制器.如果您的代码存在于例如MvcApplication1程序集中,则DefaultControllerFActory无法在没有公共访问修饰符的情况下找到您的控制器类,因此无法实例化它们.
如果你想构建一个紧密耦合的ASP.NET MVC应用程序(它不是为它设计的),那么理论上你可以按照这种方式进行.
| 归档时间: |
|
| 查看次数: |
2740 次 |
| 最近记录: |