【问题标题】:How to manage multi tenant web portal css using Asp.Net MVC如何使用 Asp.Net MVC 管理多租户 Web 门户 css
【发布时间】:2010-07-21 19:35:59
【问题描述】:

我正在使用 MVC 设计一个多租户 Web 门户应用程序。

租户将通过 URL 或租户 ID 标识。我们将拥有一组默认的皮肤和主题,但根据要求,每个租户都可以拥有自己的皮肤和主题。

为多租户 Web 门户应用程序处理/附加 CSS 的最佳方式是什么?

【问题讨论】:

    标签: css asp.net-mvc-2 saas multi-tenant


    【解决方案1】:

    他们将如何定制皮肤?如果是通过将一些变量替换为预定义的 CSS 模板,那么您可以将它们的设置保存在 CSS 配置值的数据库中,并在呈现页面时检索它们。如果他们可以从头开始创作 CSS,最好将 CSS 存储为文本,然后从数据库中检索。这可能会使测试和调试 CSS 变得更加困难。

    【讨论】:

    • 让我澄清一下。所有可能的 css/主题都将预先定义。要使用的 css 文件将在站点配置中定义。我们将使用母版页。我应该在主文件中附加css吗?我的问题是为网站附加 CSS 的最佳方式是什么?最佳做法是什么?
    • 我不确定我是否理解“在主文件中附加 css”...如果之前定义了所有 CSS 文件,您可以将它们与 ID 关联,然后在每个用户的数据库中,存储他们首选的 CSS 文件的 ID。当您加载该用户的页面时,不要总是加载相同的 CSS,而是使用数据库中的 ID 来查找他们喜欢的 CSS。应该不会太难。如果您愿意,您也可以将 CSS 文件存储在数据库中,而不仅仅是存储 CSS 文件的 ID 和路径。
    • 谢谢,所以,答案是从数据库中加载 CSS(文件本身或路径)。从数据库加载文件是否存在性能问题?
    • @AlterWorld:可能,但我怀疑你会用你的 CSS 文件来解决它(除非你有很大的 CSS 文件)。如果您担心这一点,您可以在第一次请求某个 CSS 文件时将文件加载到延迟加载缓存中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-26
    • 1970-01-01
    相关资源
    最近更新 更多