【问题标题】:Persisting User Specific Settings in ASP.NET Server-Side在 ASP.NET 服务器端保留用户特定设置
【发布时间】:2009-07-01 15:35:49
【问题描述】:

我正在开发一个 .NET 3.5 Web 应用程序,我想知道在服务器端保留用户特定设置(即用户首选项)的好方法是什么?

条件如下:

  • 它需要能够存储/检索 基于用户 ID 的设置
  • 我不想使用 SQL Server 或任何此类数据库引擎
  • 我不想将其存储在 cookie 中

任何指导将不胜感激。

编辑:如果有任何不同,它不必支持网络农场。

【问题讨论】:

    标签: c# asp.net persistence


    【解决方案1】:

    为此使用 ASP.NET 配置文件功能。见ASP.NET Profile Properties Overview

    【讨论】:

    • 这也是我的第一个想法,但他没有提到数据库引擎。配置文件管理器可以配置为使用文本文件而不是数据库吗?如果是这样,那是一个很好的解决方案。
    • 我对 Profile Manager 的了解是它需要一个 SqlProfileProvider。这似乎特别需要一个用于创建配置文件表的数据库;这反过来又需要一个数据库引擎。
    • msdn.microsoft.com/en-us/library/014bec1k.aspx。 ASP.NET 的 Profile、Membership 和 Roles 功能都基于提供程序架构,这意味着:您可以使用相同的 API,同时存储您喜欢的数据。
    • +1 谢谢,这正是我想要的。它是允许我将其存储在 XML 文件中的自定义配置文件提供程序。
    • 对不起,我没有直接提到它。这是我考虑使用 Profile 的基础。我想当然地认为读者会了解这些组件的基于提供者的模型。
    【解决方案2】:

    如果您想持久化数据,并且不想使用数据库,那么您需要将数据保存到磁盘(例如 XML)。如果您正在寻找服务器本地以外的东西,您可以使用 SaaS 解决方案来为您托管数据,例如 Amazon's S3 service。如果这样做,数据检索的延迟会降低应用程序的速度,因此您需要缓存数据。

    【讨论】:

      【解决方案3】:

      文本文件 (JSON/XML/etc),尽管安全性成为一个相关问题。

      【讨论】:

        【解决方案4】:

        鉴于这些参数,您可以在服务器上跟踪您自己的用户偏好 XML 文件。

        【讨论】:

        • 我一开始有这种想法,但是通过 XMLReader/Writer 管理 XML 的想法变得相当不吸引人。这个问题似乎解决了这个问题:stackoverflow.com/questions/317134
        猜你喜欢
        • 2019-12-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2023-03-20
        • 2018-03-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多