Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/289.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将数据关联到ASP.NET成员_C#_Asp.net Mvc_Asp.net Mvc 3_Entity Framework_Asp.net Membership - Fatal编程技术网

C# 将数据关联到ASP.NET成员

C# 将数据关联到ASP.NET成员,c#,asp.net-mvc,asp.net-mvc-3,entity-framework,asp.net-membership,C#,Asp.net Mvc,Asp.net Mvc 3,Entity Framework,Asp.net Membership,我正在做我的第一个基于ASP.NET成员身份的项目,我在弄清楚如何将自定义数据与特定成员关联方面遇到了问题。这里的惯例是什么 例如,我想制作一个网络应用程序,人们可以对不同的事情进行投票。为了确保人们不会一次又一次地投票,我想追踪谁对什么样的投票进行了投票。(我提供了一个预期用途的示例,但主要对通用实现感兴趣) 有没有人知道已经在线编写的指南或其他关于这方面的好资源 如果**相关,我将使用EF4访问数据库(我不直接需要EF和/或数据库访问方面的帮助,只需要了解成员资格与其他数据的关系)。目前,由

我正在做我的第一个基于ASP.NET成员身份的项目,我在弄清楚如何将自定义数据与特定成员关联方面遇到了问题。这里的惯例是什么

例如,我想制作一个网络应用程序,人们可以对不同的事情进行投票。为了确保人们不会一次又一次地投票,我想追踪谁对什么样的投票进行了投票。(我提供了一个预期用途的示例,但主要对通用实现感兴趣)

有没有人知道已经在线编写的指南或其他关于这方面的好资源


如果**相关,我将使用EF4访问数据库(我不直接需要EF和/或数据库访问方面的帮助,只需要了解成员资格与其他数据的关系)。目前,由于GoDaddy在每个数据库上给了我空间,我计划将成员身份存储在MsSQL中,其余数据存储在MySQL中。

您需要唯一标识当前登录的用户。您很可能希望使用
MembershipUser.ProviderUserKey
,它是由特定风格的
MembershipProvider
提供的唯一标识符。对于
SqlMembershipProvider
,此属性的值为
Guid

因此,您可以在投票记录上有一个属性,如下所示(假设您使用的是
SqlMembershipProvider
):

您可以按如下方式获取当前用户的ID:

Guid userId = (Guid)Membership.GetUser().ProviderUserKey;

Vote vote = new Vote { UserId = userId };
当然,在创建和保存新投票之前,您可以从这里进行查询,以确保没有
投票
UserId==UserId
存在

Guid userId = (Guid)Membership.GetUser().ProviderUserKey;

Vote vote = new Vote { UserId = userId };