gpt4 book ai didi

asp.net-mvc - 支持 RavenDB 的 MVC4 成员(member)系统

转载 作者:行者123 更新时间:2023-12-04 01:10:35 26 4
gpt4 key购买 nike

我创建了很多快速的“概念证明”MVC 应用程序,实际上我发现随 MVC4 模板一起提供的 SimpleMembership 提供程序非常方便,因为它让我在几分钟内启动并运行用户注册和 OAuth。

但是...我已经开始使用 RavenDb(在 RavenHQ 上为我的项目使用了很多)。所以,我开始尝试基于 ExtendedMembershipProvider 实现我自己的“自定义成员资格提供者”,在这样做的同时我意识到这没有多大意义。
后来我偶然发现了 2 个有趣的项目,它们试图解决这个确切的问题:

  • WorldDomination.Web.Auth:https://github.com/PureKrome/WorldDomination.Web.Authentication
  • MemFlex:https://github.com/OdeToCode/Memflex

  • 两者都是最近的非常有趣的努力,并且想知道是否只有这些是现在正在构建的。我本质上是在寻找可以放入 MVC4 应用程序、连接到我的 RavenDb 并完成的 nuget pkg。我愿意构建这个东西,但不想重复任何已经在进行中的努力。
    谢谢!

    最佳答案

    RavenDB 有多个 ASP.Net 成员(member)提供程序。它们都不是官方的,它们的实现都略有不同。谷歌搜索“ravendb 成员(member)提供商”,你会发现很多。

    有好文章here将其中一些与 Raven 自己的授权和身份验证包进行比较。

    我同意你的观点,在各种 MVC4 模板上为 Raven 替换 SQL 应该更容易。但是,除了依赖于成员资格提供者之外,他们还倾向于拥有旨在与 Entity Framework 一起使用的模型。如果您考虑到 RavenDB 从头开始​​编写示例模板,您可能会得到一个非常不同的最终产品。

    更新

    我没有意识到你在谈论新的 SimpleMembershipProvider .我不知道这存在。我找到了 Jon Galloway's article详细描述它 - 很棒的阅读。他指出了与此相关的两个关键点。我引用:

    Note that SimpleMembership still requires some flavor of SQL Server - it won't work with MySQL, NoSQL databases, etc. You can take a look at the code in WebMatrix.WebData.dll using a tool like ILSpy if you'd like to see why - there are places where SQL Server specific SQL statements are being executed, especially when creating and initializing tables. It seems like you might be able to work with another database if you created the tables separately, but I haven't tried it and it's not supported at this point.



    ...

    The important thing to take away here is that a SimpleMembershipProvider is a MembershipProvider, but a MembershipProvider is not a SimpleMembershipProvider. This distinction is important in practice: you cannot use an existing MembershipProvider (including the Universal Providers found in System.Web.Providers) with an API that requires a SimpleMembershipProvider, including any of the calls in WebMatrix.WebData.WebSecurity or Microsoft.Web.WebPages.OAuth.OAuthWebSecurity.



    我会收集然后写一个 SimpleMembershipProvider对于 RavenDB 来说是不可能的。

    关于asp.net-mvc - 支持 RavenDB 的 MVC4 成员(member)系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13666235/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com