gpt4 book ai didi

asp.net - 如何在没有 Entity Framework 的 MVC 中使用 SimpleMembership

转载 作者:行者123 更新时间:2023-12-03 14:11:21 24 4
gpt4 key购买 nike

将 SimpleMembership (ASP.NET MVC 4) 与 RavenDB(或其他数据库)一起使用而不是 SQL Server 需要哪些步骤?

我习惯于覆盖 MembershipProvider,但它如何与新的 SimpleMembership 一起使用?

我看到有一个 SimpleMembershipProvider 所以我想我应该重写它,但我不知道这些方法是否仅用于存储数据目的,或者它们是否应该包含业务/验证逻辑)......

配置呢?我知道 InitializeDatabaseConnection 方法通常负责初始化整个 shebang,但如果我不使用 Entity Framework ,我认为我不应该调用它。

不幸的是,我没有找到很多关于新的 SimpleMembership 的资源,除了两个不是很有用的链接:

http://igambin.blogspot.ca/2012/08/simplemembershipprovider-huh.html

http://blog.osbornm.com/archive/2010/07/21/using-simplemembership-with-asp.net-webpages.aspx

最佳答案

所以这是我在查看一些源代码(MVC4)后发现的。

http://aspnetwebstack.codeplex.com/SourceControl/changeset/view/553690ac9488#src%2fWebMatrix.WebData%2fExtendedMembershipProvider.cs

SimpleMembership 是抽象类 ExtendedMembershipProvider 的实现。
SimpleMembership 中的代码主要是 SQL 操作和一些对底层(在文档中称为“previous”)MembershipProvider 的调用。

我认为重写 SimpleMembership 没有任何用处(在我的情况下),因为它的实现主要与 SQL Server 相关联。相反,据我了解,我应该实现 ExtendedMembershipProvider。然后,通过在 web.config 文件中设置此实现,WebSecurity 帮助程序将绕过 SimpleMembership(默认实现)并调用我的 ExtendedMembershipProvider 实现。

我认为我不会很快这样做,因为它看起来比以前更复杂(实现更多方法)......但仍然可行。

然而,这一切都说,我有点失望,我们仍然必须使用 。 MembershipProvider 恕我直言,这与我们非常喜欢 ASP.Net MVC/WebApi 的整个依赖注入(inject)东西相去甚远(很多静态和内部的东西)。

编辑 1

这个问题是在 Jon Galloway 写本教程之前提出的:
http://weblogs.asp.net/jgalloway/archive/2012/08/29/simplemembership-membership-providers-universal-providers-and-the-new-asp-net-4-5-web-forms-and-asp-net-mvc-4-templates.aspx

但是我的回答仍然有效,因为这个(取自 Jon Galloway 文章)恢复了它:

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.

关于asp.net - 如何在没有 Entity Framework 的 MVC 中使用 SimpleMembership,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12169595/

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