【问题标题】:Reusing DotNetNuke membership/role/profile providers重用 DotNetNuke 会员/角色/个人资料提供者
【发布时间】:2011-09-06 20:43:06
【问题描述】:

我们目前有一个想要迁移到 DNN 的现有 ASP.NET 应用程序。不幸的是,由于时间限制,我们需要逐个移动它(或逐个功能......但是你想看看它)。而且,在我们迁移到 DNN 时,我们希望在现有应用程序中利用当前 (DNN 6.0) 版本的成员资格、角色和配置文件提供者。我似乎让会员提供者在工作,但是,关于角色和个人资料提供者,我正处于“最好的方法是什么”时刻之一。

所以,我的问题是:

  1. 是否应该利用 DNN 核心代码为角色和配置文件提供者创建自定义提供者?有其他人这样做过吗?
  2. 或者我可以/应该为这些使用 DNN 程序集吗?我很想知道这是否可能(仅使用程序集、更新 web.config 等)??

任何其他建议将不胜感激!

提前致谢!

【问题讨论】:

    标签: dotnetnuke


    【解决方案1】:

    就个人而言,我认为没有理由创建一组自定义提供程序,并且认为使用产品随附的“核心”提供程序应该没问题(因此没有理由进行开发)。您的挑战将是如何将现有用户(及其所有数据)引入新的 DNN 安装。您可以选择如何导入此数据,从自定义开发(用户导入应用程序/模块)到允许用户从各种来源导入的第三方模块(通常,单独使用 SQL 脚本将很难使用,尤其是当您考虑密码散列时) /security 以及所有数据如何分布在多个表中,其中一些在上一个答案中提到)。

    【讨论】:

    • 我能够避免创建自定义角色和配置文件提供程序并使用核心 DNN 提供程序。因此,即使在您回复之前我已经解决了问题,我仍将其标记为答案。
    【解决方案2】:

    如果您要利用 DotNetNuke 中的角色、配置文件、用户帐户,那么您可能需要做更多事情,而只是实现自定义提供程序。

    DNN 与标准 ASP.NET 成员资格提供程序表交互,但也使用用户表和附加表来存储自定义用户配置文件信息的信息。还使用特定于 DNN 的用户角色表。

    因此,当创建或更新帐户时,它会影响很多地方。

    我还没有这样做,但 DNN 使用提供程序来访问 ASP.net 成员资格的东西。过去曾宣传过,您可以将其指向另一个系统的 ASP 成员表,它应该可以工作。

    因此,最好让您的应用使用标准的 asp 网络成员表,然后在时机成熟时将 DNN 指向您的表。

    【讨论】:

    • Ryan - 我知道会员提供程序的 DNN 实现使用了 aspnet 和 DNN 表。而且,我知道角色和配置文件提供者只使用 DNN 表(至少在 DNN 6.0 中)。我想我可以使用 aspnet 角色和配置文件提供程序并在 aspnet 和 dnn 表之间同步数据。
    • 我知道一个用户在 User, UserRoles 中有数据,我认为有一个 UserProfile 表。我想您可以根据需要同步或设置触发器以临时制作/移动数据。您可能可以使用 SQL Profiler 或一些 Red Gate 工具来确定为新用户添加数据的确切位置,并确信您知道为未来用户更新什么。我认为这比将所有 DNN dll 移动到您的项目/配置中并尝试使其运行更简单/更明智。
    猜你喜欢
    • 1970-01-01
    • 2010-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多