无效的初始化成员声明asp.net

问题描述:

请帮助我。我无法从IdentityUser.Convert.ToInt32(Id)转换ID:错误无效的初始化器成员声明器。无效的初始化成员声明asp.net

private static void SetUser(User user, IdentityUser identityUser) 
{ 
    user.Password = identityUser.PasswordHash; 
    user.SecurityStamp = identityUser.SecurityStamp; 

    user.UserId = Convert.ToInt32(identityUser.Id); 
    user.UserName = identityUser.UserName; 
    user.UserEmailAddress = identityUser.Email; 
} 
private IdentityUser ToIdentityUser(User user) 
{ 
    // IdentityUser identityUser = new IdentityUser(); 
    return new IdentityUser 
      { 
       Convert.ToInt32(Id) = user.UserId, 
       PasswordHash = user.Password, 
       SecurityStamp = user.SecurityStamp, 
       UserName = user.UserName, 
       Email = user.UserEmailAddress 
      }; 
} 

你实际上有两个Convert.ToInt32(Id)语句,但我假设的问题之一是在ToIdentityUser()方法。

请注意,左值不能是对方法的调用。换言之,声明:

Convert.ToInt32(Id) = user.UserId, 

不能正确。也许你打算:

Id = Convert.ToInt32(user.UserId), 
+0

感谢anwser,但我想将Id转换为Int,因为Id是字符串类型和UserId(在我的数据库中)是int类型。 Id = Convert.ToInt32(user.UserId):错误不能将类型'int'隐含转换为'string' – HungVM