4

现在我正在研究基于 MVC 的 Web 分析系统。在开发过程中,我想到了提取 Web 管理面板以分离程序集。它用于我的其他项目。因此,将来我可以只引用该程序集,而不关心布局 Web 面板。

Web 面板本身只是具有一些紧凑设计的元素的标记。它包含主菜单、子菜单和填充所需其他元素的位置。

目前,我使用 RazorGenerator 在此类面板中获得了包含所有视图的程序集。

问题是如何管理此类程序集的 css 文件?我应该将它们内联到视图并将该视图放置到已编译的程序集中还是将它们部署为带有程序集的单独 css 文件?

该 css 包将被压缩/最小化或以任何方式组合到最终项目中。

4

2 回答 2

2

您可以将 css 和 js 文件打包为资源并使用资源处理程序提供服务,但如果出现设计异常,您将无法在以后的项目中编辑它们(例如,您需要修改 a css 类,因为它与另一个项目的主要 css 冲突)。

为什么不创建一个 nuget 包?一些优点

  • 您拥有 zip 文件中的所有内容(您无需发布包即可使用它)
  • 您可以直接从控制台添加项目
  • nuget 为管理区域的视图和控制器创建相应的文件夹结构
  • 如果您需要删除它,只需将其卸载,它就会带走所有文件。
  • 另外,您可以灵活地为管理员修改 css 和 js 文件。
  • 这比在您的应用程序上拥有一个“黑盒”dll 来处理路由并提供对应用程序的其余部分隐藏的打包文件要容易得多。

以下是一些关于如何创建自己的 nuget 包的教程:

于 2013-06-22T15:18:55.830 回答
1

它是可部署的程序集吗?例如,它会被添加到许多不同的系统、不同的位置,还是会在公司网络上使用?

如果您正在部署程序集,那么您可能希望将 css 编译为资源并使用 ASP.Net 内置的资源处理程序来为 css 提供服务。因此,您对其他任何东西都没有依赖关系,您可以预压缩/缩小 css 并且主机服务器可以负责缓存。

如果它用于公司网络或您控制的服务器,则将 css 放在中央服务器上并让它们都引用该位置。不过,以前的方法在这里也同样有效。

于 2013-06-17T12:29:13.637 回答