3

虽然我问了一些关于如何在 ASP.NET MVC 4 中使用会员提供程序的问题,但几乎没有得到任何回应。我需要时间(作为新手)开始使用 ASP.NET MVC 4 中的成员资格提供程序。我一直在阅读文章,尝试一些东西,但这只会增加混乱而不是帮助。

初学者对以下查询的答案是什么:

  1. 在决定我应该为哪个项目使用哪个成员之前,我想尝试所有的成员提供者(包括简单的成员提供者)。我可以在 ASP.NET MVC 4 中使用哪些成员资格提供程序以及如何配置其中的每一个。任何文档或链接?
  2. 虽然 Internet 模板带有预配置的帐户控制器,用于设置会员功能,但我如何将会员功能添加到基本模板。为了使用会员提供者配置会员资格,我应该遵循哪些步骤(我假设不同的会员提供者会有不同的步骤/配置/设置)。
  3. 运行使用 Internet 项目模板创建的 ASP.NET MVC 4 项目(不对其进行任何更改)在数据库中创建 5 个表,即 UserProfile、webpages_Membership、webpages_OAthMembership、webpages_Roles、webpages_UsersInRoles)。在AccountModel.cs我只看到一个定义,UserProfile。其他表在哪里定义。我是否总是需要在数据库中拥有所有这些表才能使用成员资格。我可以自定义它们、重命名它们或选择不使用其中的一些吗?
  4. 我在 web.config 中没有看到 Internet 项目模板的任何成员资格配置,但正在使用成员资格。在一些文章教程中,我看到人们通过添加<membership></membership>到 web.config 来配置它。什么时候需要将配置设置添加到 web.config,什么时候不需要?

我认为会员提供者旨在让开发人员的生活变得轻松,但对我来说,这让它变得更加困难。我知道我真的需要研究它,这就是我在过去 7、8 天里一直在尝试的东西,但无法弄清楚。任何帮助、链接(希望不是我多次浏览的链接)都非常受欢迎。

4

2 回答 2

3

我同意你的看法,关于哪些会员类型做的很糟糕的指导。

  1. 您可以将任何提供程序与 ASP MVC 一起使用。Visual Studio 中的默认模板即 Internet MVC 应用程序是唯一使用 SimpleMembership 的模板。

  2. 好问题,我根本没有找到任何明确的、体面的文档。据我所知,大多数会员的设置都非常相似。

  3. 至少 SimpleMembership 将创建所需的数据库表,如果它们不存在则需要这些表。我认为您唯一可以真正自定义的是您的用户表。

  4. 我认为就像 sql 表一样,web.config 中的成员资格标签是隐含的。如果您接受默认值,它们就会神奇地起作用。

我找到的最佳链接是 http://blog.longle.net/2012/09/25/seeding-users-and-roles-with-mvc4-simplemembershipprovider-simpleroleprovider-ef5-codefirst-and-custom-user-特性/

在那篇文章中,还有另外两个也很有帮助。

于 2013-03-25T18:24:50.137 回答
1

对于问题 3,我尝试了一些方法,结果是:

的:您可以将新列添加到 UserProfile (以及所有其他表,我猜)

:即使您已修改 AccountModels 中的代码以匹配新表名,您也无法重命名该表。在这种情况下,当您启动应用程序时,将再次创建一组具有旧名称的表。并且 MVC4(MembserShip、WebSecurity、Users、Roles....)提供的所有代码都将使用旧表。

而且,我从未找到有关如何重命名这些表的任何信息。

于 2013-10-28T00:37:44.007 回答