我正在尝试将我的视图,控制器和模型分离到一个单独的DLL中,然后将它们加载到我的宿主应用程序中。当我谷歌它发现这EmbeddedResourceVirtualPathProvider
或VirtualPathProvider
可能是我们可以做到的方式,但遗憾的是没有找到任何工作样本应用程序或可能是任何其他能够很好地满足此要求的东西请让我们我知道。我正在使用带有剃刀视图引擎的ASP.Net MVC 5。
提前致谢。
答案 0 :(得分:2)
如果您自己尝试然后询问有关您遇到的问题的问题,那就更好了。 StackOverflow不擅长发布完整的解决方案;我们倾向于帮助解决具体问题。
EmbeddedResourceVirtualPathProvider quick-start guide是否足以帮助您?
IIS的自定义VirtualPathProvider - 从引用程序集中的嵌入式资源加载视图和资源。要开始使用,请通过nuget:
安装到ASP.NET Web应用程序中
Install-Package EmbeddedResourceVirtualPathProvider
这将在注册提供者的App_Start中添加一些代码。
将视图和资源移动到其他程序集中,维护文件夹结构。 e.g。
/MyAspNetApp/Views/Thing/Thing.cshtml -> /ThingComponent/Views/Thing/Thing.cshtml
将BuildAction文件设置为EmbbeddedResource。确保你的装配被引用,你就完成了!
默认情况下,会扫描应用程序域中的所有程序集。您可以在
App_Start\RegisterVirtualPathProvider.cs
文件中对此进行限制。您还可以将程序集映射到磁盘上的位置,以便在开发期间编辑文件时[可以]对它们进行引用。