ASP.NET c#配置文件:GetProfile不可用

ASP.NET c#配置文件:GetProfile不可用,c#,asp.net-membership,profile,asp.net-profiles,C#,Asp.net Membership,Profile,Asp.net Profiles,可能重复: 如何在cs类中获取配置文件?它在aspx.cs类中运行良好 ProfileCommon profile= HttpContext.Current.Profile.GetProfile(username); 如何使GetProfile()在cs类中可用?请给出建议,谢谢看看我关于评测用户的回答。您所需要的一切如下: 在您的代码中,您正在创建配置文件,我如何检索现有配置文件?谢谢你再看看我的答案。首先,您需要在web.config中注册配置文件提供程序和配置文件属性。Create函

可能重复:

如何在cs类中获取配置文件?它在aspx.cs类中运行良好

 ProfileCommon profile= HttpContext.Current.Profile.GetProfile(username);

如何使GetProfile()在cs类中可用?请给出建议,谢谢

看看我关于评测用户的回答。您所需要的一切如下:


在您的代码中,您正在创建配置文件,我如何检索现有配置文件?谢谢你再看看我的答案。首先,您需要在web.config中注册配置文件提供程序和配置文件属性。Create函数创建配置文件或检索它(如果已经存在)。在您的情况下,可能缺少配置表或sqlProfile表(如果您使用的是SqlProfileProvider)。您是对的。非常感谢。一旦我将defaultProvider更改为SqlProvider,它就工作了。请解释一下AspNetSqlProfileProvider和SqlProvider之间的区别,为什么它不能与AspNetSqlProfileProvider一起工作?同样在aspx.cs文件中,我会使用GetProfile(),但在类文件中,我使用.ProfileBase.Create(),这是相同的吗?我是否也应该在aspx.cs文件中使用.ProfileBase.Create()?非常感谢。我认为不存在AspNetSqlProfileProvider类型的提供程序。这只是SqlProfileProvider使用的默认名称。我猜您在更改web.config时输入了错误的内容。当您想访问特定的配置文件时,只需使用ProfileBase.Create(“SomeUserName”)就可以了。仅使用ProfileBase.Create()将不会给出所需的结果。