首页 新闻 会员 周边

asp.net core 2.0 把areas里面的模块独立出来,每个模块单独做个项目

0
悬赏园豆:50 [已解决问题] 解决于 2017-10-30 14:06

asp.net core 2.0 把areas里面的模块独立出来,每个模块单独做个项目,这样对于模块比较多的多人合作开发的场景非常适宜,互相各不影响。

这些模块类似插件,最后要合并到一个主项目来,仅仅把个模块的dll注入还不行还得考views,这样主项目对各个模块插件是不可控的。

有什么办法不需要引入views重新生成主项目,主项目发布好了,把个模块的dll放进去就可以用的?

村委第一书记的主页 村委第一书记 | 初学一级 | 园豆:26
提问于:2017-10-28 17:11
< >
分享
最佳答案
2
收获园豆:40
dudu | 高人七级 |园豆:30994 | 2017-10-29 12:44

谢谢dudu大神回答,有一定参考价值,回去再试试razor视图看下可不得可以

我的问题可能没有描述的很清楚,我再说下我的想法。

web传统的信息管理项目在模块功能很多的时候,我们不想在一个项目里面多人开发,即使在一个项目里面使用了areas区分模块已经很清晰了,但毕竟在一个项目里面还是存在项目冲突,开发人员权限不好控制问题。

我的想法是建立一个web主项目,就包括一个登录页以及后台主框架界面。

让后把areas里面的模块全部单独立出去每个都建单独web项目,各个模块项目只包含自己的areas模块。

主项目发布之后模块项目可以无限扩展,不需要调整主项目,把各个子项目发布出来的dll放到主项目里面就可以了。

这种方式在我们之前的mvc4项目是没问题的,因为原来的方式views视图是要单独考的。

现在迁移到core  发现默认views已经是打包到dll里面了,但是一定要考到主项目里面重新发布下主项目才能找到对应的视图

村委第一书记 | 园豆:26 (初学一级) | 2017-10-30 10:31
其他回答(2)
1

将view 预编译不可以吗?

收获园豆:10
为森 | 园豆:579 (小虾三级) | 2017-10-29 04:48

是编译的,但是在主项目里面运行的时候还得把各个模块的views考进来才可以,按理说dll里面都包括了views了但路由指定不到独立程序集里面的视图

支持(0) 反对(0) 村委第一书记 | 园豆:26 (初学一级) | 2017-10-30 10:06
0

一直以为asp.net core项目发布的时候就一个dll文件  发现视图编译的是另个文件,把这个dll文件也考进去就解决了,不需要拷贝views到主项目发布了

村委第一书记 | 园豆:26 (初学一级) | 2017-10-30 14:04

博主请问下,将相关dll拷到发布目录就好了吗,我没有建对应的area文件夹,然后页面上访问不到我area里面的controller

支持(0) 反对(0) 撩剑势 | 园豆:202 (菜鸟二级) | 2020-03-10 11:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册