我正在设计一个复杂的基于Web的业务解决方案。我的域,报告和流程项目围绕业务模块(3-4级深度)构建,例如:
\Franchises
\Regionals
\Billing
\Monthly
\...
\...
\...
\...
\...
\...
\...
\...
传统的MVC文件夹结构突出了一个疼痛的拇指,最多2级。因此,我打算改为实现这个结构:
\Franchises\Regionals\Billing\Monthly\RegionalMonthlyBillingController.cs
\Franchises\Regionals\Billing\Monthly\Views\...
\Franchises\Regionals\Billing\Monthly\ViewModels\...
\Franchises\Divisionals\Allocation\DivisionalAllocationController.cs
\Franchises\Divisionals\Allocation\Views\...
\Franchises\Divisionals\Allocation\ViewModels\...
...
请注意,我们的域模型保存在Domain中,而WebUI只需要包含ViewModels。
除了自定义MVC路由/映射的问题之外,您能看到这种方法有任何问题吗?
鉴于会有很多视图文件夹,MVC是否需要搜索500多个文件夹来查找相关视图?
答案 0 :(得分:3)
除了自定义MVC路由/映射的问题之外,还可以 看到这种方法有什么问题吗?
可能会导致一些非常大的项目,并且可能很难为新手进行导航。您可以考虑将单独的程序集中的某些逻辑外部化,以避免使用单个整体应用程序。考虑ASP.NET MVC区域。
鉴于会有很多视图文件夹,可能会有性能 关注MVC必须搜索500多个文件夹才能找到相关内容 查看?
不,当在发布模式下运行时(debug =" false"),ASP.NET MVC会缓存视图的位置,查找速度非常快。