在做asp.net core程序的时候,
一般会有一个X.Web项目,这个项目是主网站
还会有一个X.Web.Mvc项目,这个项目我一般用于写一写公共的视图和controller,和ViewComponent或者其他杂七杂八的东西
比如有一个组件,ImgUploadViewComponent,上传你文件组件
在组件返回view的时候,这个view目前我必须写在X.Web项目下,不然访问会出错,因为主项目发布之后会有一个 X.Web.Views.dll 存放了所有的view视图,但是这里面不包含X.Web.Mvc下的视图,以至于在一个框架下开发多个项目的时候就要复制公开可用的组件下所有的view去主项目,以至于维护非常不方便。
为此网上搜索了一下,可以在项目总加入
<MvcRazorCompileOnPublish>false</MvcRazorCompileOnPublish>
属性让主项目发布的时候不编译views,将views全部输入发布,运行时在编译,我将所有的视图设置为复制文件,文件夹也设置好对应文件夹,这样发布程序之后可以满足,但是问题来了,开发的时候在bin目录下就没有视图,并且调试查找视图目录是bin的上上级目录,也就是程序的跟目录,以至于调试总是找不到视图。
请问各位大神,你们在做的时候怎么解决呢?
如何实现将视图放在其他类库中也可以正常访问到呢?
目前我只有一个解决方案,就是设置所有的视图为复制,项目生成不编译视图,重写试图引擎获取路径,但是这种总感觉不安逸,请问你们怎么做的
分不多 还请大神不栗赐教