.net MVC3与用户管理

.net MVC3与用户管理,.net,asp.net-mvc-3,membership,userid,.net,Asp.net Mvc 3,Membership,Userid,我是.NET框架的新手,但在其他基于MVC的框架(如Symfony和Zend框架)方面有丰富的经验 我有一个申请,要求研讨会参与者注册,然后选择他们想要参加的研讨会,所以我有3个模型,即研讨会、参与者和注册,基本上有WorkshopID和ParticipantID 我如何整合现有会员资格,或者在参与者注册并选择所需研讨会后,是否有其他方式将参与者ID记录到注册中?对于Symfony或Zend来说,这只需要一分钟的时间,但无法确定如何构建注册用户及其选择,因为Jakub指出这是一个业务领域的问题。

我是.NET框架的新手,但在其他基于MVC的框架(如Symfony和Zend框架)方面有丰富的经验

我有一个申请,要求研讨会参与者注册,然后选择他们想要参加的研讨会,所以我有3个模型,即研讨会、参与者和注册,基本上有WorkshopID和ParticipantID


我如何整合现有会员资格,或者在参与者注册并选择所需研讨会后,是否有其他方式将参与者ID记录到注册中?对于Symfony或Zend来说,这只需要一分钟的时间,但无法确定如何构建注册用户及其选择,因为Jakub指出这是一个业务领域的问题。看起来你并不是在看我最初设想的入学授权。如果你是的话,你会去看.NET

这与身份验证和成员资格提供程序相结合,并提供了一个快速的框架,以便在注册时将用户分组为安全角色,如下所示:

Roles.AddUserToRole(User.Identity.Name, "Workshop");
Roles.RemoveUserFromRole(User.Identity.Name, "Workshop");
AspNetSqlRoleProvider
与Sql Server一起使用或多或少是现成的,但也有一些相关的配置和设置

但是,对于business domain,对于用户和注册之间的关联,您将使用唯一的
MembershipUser.ProviderUserKey
(或您自己的抽象)映射1对多,并将注册保留在您自己的模式中


可用于帮助首先使用代码从模型中快速构建数据库架构。

如果要将参与者与成员用户链接,最好的方法是将Guid列(userId)添加到参与者表中,并将其与
aspnet\u users
表上的主键链接。通过这种方式,您可以将域参与者与ASP.NET用户链接。

-1-我认为将安全性(角色)与应用程序域(研讨会)混合使用是一个错误的决定。正确的方法是创建相关的数据库表(研讨会、参与者和链接器)我同意——但这取决于分组的意图——他可能正在寻找一种基于安全性的解决方案,因为这个问题专门询问成员资格,这是一个有效的场景——我试图为分组用户提供快速的.NET scaffold类比。如果目的是为了商业领域,那么不,这是不合适的。实际上,重读这个问题,它确实看起来更像是一个商业领域的问题。事实上,我会更新我的答案。谢谢大家让我睁开眼睛,我想我是带着在其他框架中实现解决方案的想法来处理这个问题的。