Membership.GetUser -> Membership 不包含“GetUser”的定义。我错过了啥?
Posted
技术标签:
【中文标题】Membership.GetUser -> Membership 不包含“GetUser”的定义。我错过了啥?【英文标题】:Membership.GetUser -> Membership doesn't contain a definition for 'GetUser'. What have I missed?Membership.GetUser -> Membership 不包含“GetUser”的定义。我错过了什么? 【发布时间】:2015-04-26 02:36:56 【问题描述】:MembershipUser newUser = Membership.GetUser(CreateUserWizard1.UserName);
我在GetUser
下看到一条红线,当我将鼠标悬停在它上面时,会出现一条消息:
会员不包含“GetUser”的定义
当我点击GetUser
下方的小破折号时,我得到:
在“Membership”中为“GetUser”生成方法存根
我错过了什么?
ASPX:
<asp:CreateUserWizard ID="CreateUserWizard1" runat="server" OnCreatedUser="CreateUserWizard1_CreatedUser" >
<WizardSteps>
<asp:CreateUserWizardStep ID="CreateUserWizardStep1" runat="server">
</asp:CreateUserWizardStep>
<asp:CompleteWizardStep ID="CompleteWizardStep1" runat="server">
</asp:CompleteWizardStep>
</WizardSteps>
</asp:CreateUserWizard>
后面的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
public partial class SignUp : System.Web.UI.Page
protected void Page_Load(object sender, EventArgs e)
protected void CreateUserWizard1_CreatedUser(object sender, EventArgs e)
MembershipUser newUser = Membership.GetUser(CreateUserWizard1.UserName);
Guid newUserId = (Guid)newUser.ProviderUserKey;
【问题讨论】:
@GrantWinney,我想我是从您的评论中了解到的。我有一个名为Membership
的类,但由于安装了包Microsoft.AspNet.Providers
,它是默认类。因此,您提到的System.Web.Security.Membership
与提供者之间存在冲突。谢谢。
是的 - 要么删除问题 - 或者提出你自己的答案并在你找到解决方案时接受它
【参考方案1】:
问题是由于存在同名的类Membership
。已定义的方法没有GetUser
方法的定义。
代码工作真正需要的是调用 classMembership
的完整命名空间来区分两者;已经定义了一个和预期的一个。预期的可以通过以下方式引用:
System.Web.Security.Membership
取而代之的是:
MembershipUser newUser = Membership.GetUser(CreateUserWizard1.UserName);
使用这个:MembershipUser newUser = System.Web.Security.Membership.GetUser(CreateUserWizard1.UserName);
【讨论】:
以上是关于Membership.GetUser -> Membership 不包含“GetUser”的定义。我错过了啥?的主要内容,如果未能解决你的问题,请参考以下文章