我正在使用aspnet_Profile表,它在本地运行但是当我将它推送到dev环境并运行它时ProfileBase.Create(user.Username)
返回一个空值。
var user = Membership.GetUser(Username);
不为null并返回一个用户,因此我不确定为什么返回ProfileBase.Create
的空值。
有什么想法吗?
var user = Membership.GetUser(Username);
var ext_user= ProfileBase.Create(user.UserName) as UserProfile;
ext_user.Name = Name;
ext_user.Save();
public class UserProfile : ProfileBase
{
public static UserProfile GetUserProfile(string UserName)
{
return Create(UserName) as UserProfile;
}
public string NameExtended
{
get { return base["NameExtended"] as string; }
set { base["NameExtended"] = value; }
}
}
答案 0 :(得分:2)
Fabii对于明确的答案是正确的,但我自己最初没有理解答案是什么,直到我自己解决这个问题。为了记录,您需要在配置文件中执行类似的操作,其中您的inherits语句指向继承自ProfileBase的类:
<profile defaultProvider="DefaultProfileProvider" inherits="YourNamespace.YourClass">
答案 1 :(得分:1)
解决了,我这个愚蠢的错误。我的环境.config文件中没有设置inherit属性。