gpt4 book ai didi

asp.net-mvc-3 - MVC3 : EF Code First and authentication

转载 作者:行者123 更新时间:2023-12-05 00:34:43 25 4
gpt4 key购买 nike

我正在 SQLExpress DB 上构建一个 MVC3 EF Code First 应用程序。每当架构发生变化或类似的事情时,数据库都会自动生成,这对我来说非常重要。现在我正在向我的应用程序添加身份验证,并且我查看了 MVC 附带的身份验证框架。但是,看起来每次生成新数据库时都需要我运行 aspnet_regsql.exe。我真的需要身份验证表与我的应用程序数据库位于同一个数据库中。

我基本上想知道我的选择是什么;

  • 是否可以使用身份验证框架并以与 Entity Framework 生成我的其他数据相同的方式自动生成它?
  • 如果不是,我可以编写自己的身份验证,但是还有可以使用的部分吗?换句话说,我是否需要编写自定义成员资格提供程序或类似的东西?我想继续使用属性 [authenticate] 等。

  • 我可以在正确的方向上使用一些指针。

    最佳答案

    您可以从 CodeFirst Membership Provider 开始- 首先是基于代码的自定义提供程序 - 并在需要时对其进行扩展(还请阅读网站上的推荐用法)。

    以上是 IMO 的最佳方式,因为您可以真正整合两者(例如,如果您可能需要直接访问例如成员资格表、与您自己的用户/客户表等相关的内容)。

    但你还有其他选择......

    a) 编写自己的 Db 初始值设定项并对数据库进行播种(就像这里建议的 https://stackoverflow.com/a/5462981/417747 。注意:您可以使用不同的方法,从运行 aspnet 表 SQL 脚本到为 aspnet 表创建模型等)或

    b) 使用“保留”数据库的 Db 初始值设定项 - 并首先使用 aspnet 表准备数据库

    c)(最后但并非最不重要的)使用迁移(正如@Chris 正确建议的那样)。迁移非常强大。你可以运行 Update-Database -Script生成 SQL 而不是更改数据库 - 然后将其组合(与 aspnet 脚本或种子数据库)并使用它来创建或更新数据库。迁移需要一些学习,但对于更复杂的事情来说,同样值得付出努力。

    希望这可以帮助

    关于asp.net-mvc-3 - MVC3 : EF Code First and authentication,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10362607/

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