ProfileBase Create方法返回null

时间:2013-08-16 16:14:33

标签: c# asp.net

我正在使用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; }
        }

    }

2 个答案:

答案 0 :(得分:2)

Fabii对于明确的答案是正确的,但我自己最初没有理解答案是什么,直到我自己解决这个问题。为了记录,您需要在配置文件中执行类似的操作,其中您的inherits语句指向继承自ProfileBase的类:

<profile defaultProvider="DefaultProfileProvider" inherits="YourNamespace.YourClass">

答案 1 :(得分:1)

解决了,我这个愚蠢的错误。我的环境.config文件中没有设置inherit属性。