我是南希的新手,我试图在单独的项目中为每个模块/控制器设置一个webapp。主项目是空的ASP.NET项目并使用Nancy.Hosting.Aspnet
nuget包。南希从单独的库中的模块中提供视图
有这种设置的优雅方式是什么?
说我有以下解决方案结构:
/ModuleA
- ModuleA.csproj
- IndexA.cshtml (Copy to Output Directory = Copy Always)
/MainModule (references ModuleA)
- MainModule.csproj
- Index.cshtml
目前从ModuleA
我发球IndexA
观点写View["bin/IndexA"]
,这似乎很丑陋,因为它也需要以同样的方式前缀的JavaScript/CSS。
我以前没有这样做过,但是尝试在你的引导程序中添加'ResourceViewLocationProvider.RootNamespaces'。类似于'ResourceViewLocationProvider.RootNamespaces.Add(typeof(ModuleA).Assembly,“ModuleA”);'。您可以轻松地遍历所有引用的模块并在运行时添加它们。不要忘记注册提供程序('NancyInternalConfiguration.ViewLocationProvider') – eth0
谢谢,这听起来很有希望!当我有机会时,我会尝试一下。 – Grozz