在不同项目之间共享ASP.NET MVC部分视图

22
什么是在应用程序之间共享公共Partial View的最佳方法? 我创建了一个单独的程序集,其中包含我的Partial View在ascx文件中,一些用于该视图的脚本和一个HtmlHelper扩展方法,以使创建部分视图更加容易。但是,在从ASP.NET MVC应用程序引用该程序集时,它无法找到部分视图,因为ascx文件也没有被复制。此外,包含附加脚本的最佳方法是什么?目前我唯一看到的方法是将相关文件复制到新应用程序中。
4个回答

7

确实是个不错的问题。

我建议避免使用ascx文件,在HTML助手中手动生成HTML。TagBuilder类在此方面提供了很大的帮助。


4

这篇文章讨论了如何将视图嵌入DLL并从不同的项目中渲染它。我猜部分视图也可以这样做,但我没有尝试过。


2

即使是使用WebForms,这仍然是一个持续存在的问题。共享这些内容并不容易。

我现在更喜欢的方法是将我的控件创建为mvc WebControls或jQuery插件。这样我可以传递一个带有版本号的DLL或脚本文件。

我倾向于WebControls解决方案,因为我可以将其版本化并放入公司基础架构框架中。

然后,我只使用PartialViews来呈现WebControls并添加一些基本的外观、标记或内容。


0
我们在WebForms中的方法是为共享用户控件创建一个IIS虚拟目录。这种方法是否适用于MVC?

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接