WebSecurity.CreateUserAndAccount propertyValues

Je suis en train d'écrire un mvc 4 c# .net 4.5 site

Je veux créer une nouvelle société d'objet et d'enregistrer un nouvel utilisateur qui est liée à celle de l'entreprise.

Mon compte modèle:

    [Table("UserProfile")]
    public class UserProfile
    {
        [Key]
        [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
        public int UserId { get; set; }
        public string UserName { get; set; }
        public string FirstName { get; set; }
        public string LastName { get; set; }
        public string EmailAddress { get; set; }
        public string PhoneNumber { get; set; }
        public bool MarketingEmailOptin { get; set; }
        public bool isDisabled { get; set; }
        public virtual Company CompanyICanEdit { get; set; } 
    }

Si je l'appelle la suite on ajoute l'utilisateur bien, mais a la valeur null pour le CompanyICanEdit champ:

WebSecurity.CreateUserAndAccount(addCompanyViewModel.User.UserName,
                                 addCompanyViewModel.User.Password,
                                 propertyValues: new
                                 {
                                   FirstName = addCompanyViewModel.User.FirstName,
                                   LastName = addCompanyViewModel.User.LastName,
                                   EmailAddress = addCompanyViewModel.User.EmailAddress,
                                   PhoneNumber = addCompanyViewModel.User.PhoneNumber,
                                   MarketingEmailOptin = addCompanyViewModel.User.MarketingEmailOptin,
                                   isDisabled = false
                                 });

qui je m'attends à ce que je ne suis pas à l'affecter quoi que ce soit.

j'ai essayé d'ajouter (mycompany est une société d'objet):

    WebSecurity.CreateUserAndAccount(addCompanyViewModel.User.UserName,
                                 addCompanyViewModel.User.Password,
                                 propertyValues: new
                                 {
                                   FirstName = addCompanyViewModel.User.FirstName,
                                   LastName = addCompanyViewModel.User.LastName,
                                   EmailAddress = addCompanyViewModel.User.EmailAddress,
                                   PhoneNumber = addCompanyViewModel.User.PhoneNumber,
                                   MarketingEmailOptin = addCompanyViewModel.User.MarketingEmailOptin,
                                   isDisabled = false,
                                   CompanyICanEdit = mycompany
                                 });

Mais j'obtiens un message d'erreur disant qu'il ne peut pas correspondre au type.

Comment puis-je aller sur l'enregistrement de l'utilisateur, de sorte que le CompanyICanEdit contient les CompanyId valeur de mycompany?

Toute aide sera appréciée. grâce

OriginalL'auteur Pete | 2013-02-16