猿问

AutoMapper 具有未映射属性的问题

好的,首先,我想做的是从 Angular 的注册表中获取用户详细信息,并将这些详细信息注册到 SQL Server 数据库中。我一直在关注几个教程,我想知道为什么当我运行命令进行新迁移时,它会创建一个具有许多不同属性的表,我没有指定。


例如,默认情况下它会创建以下属性:


migrationBuilder.CreateTable(

                name: "User",

                columns: table => new

                {

                    Id = table.Column<string>(nullable: false),

                    UserName = table.Column<string>(maxLength: 256, nullable: true),

                    NormalizedUserName = table.Column<string>(maxLength: 256, nullable: true),

                    Email = table.Column<string>(maxLength: 256, nullable: true),

                    NormalizedEmail = table.Column<string>(maxLength: 256, nullable: true),

                    EmailConfirmed = table.Column<bool>(nullable: false),

                    PasswordHash = table.Column<string>(nullable: true),

                    SecurityStamp = table.Column<string>(nullable: true),

                   ConcurrencyStamp = table.Column<string>(nullable: true),

                    PhoneNumber = table.Column<string>(nullable: true),

                    PhoneNumberConfirmed = table.Column<bool>(nullable: false),

                    TwoFactorEnabled = table.Column<bool>(nullable: false),

                    LockoutEnd = table.Column<DateTimeOffset>(nullable: true),

                    LockoutEnabled = table.Column<bool>(nullable: false),

                    AccessFailedCount = table.Column<int>(nullable: false)

                },

我不知道这些属性从何而来,我想知道是否可以更改它。我按照教程制作了一个网站,但现在我正在尝试自己尝试一个新项目。所以,问题是,当使用 AutoMapper 时,我收到此错误消息,我想知道如何解决此问题:


AutoMapper 为您创建了此类型映射,但无法使用当前配置来映射您的类型。AccountModel -> ApplicationUser(目标成员列表) UserWebAPI.Models.AccountModel -> UserWebAPI.Models.ApplicationUser(目标成员列表)


未映射的属性: Id NormalizedUserName NormalizedEmail EmailConfirmed PasswordHash SecurityStamp ConcurrencyStamp PhoneNumber PhoneNumberConfirmed TwoFactorEnabled LockoutEnd LockoutEnabled AccessFailedCount



慕田峪7331174
浏览 165回答 1
1回答

守着一只汪

我想知道为什么当我运行命令进行新迁移时,它会创建一个具有许多不同属性的表,但我没有指定。由于您ApplicationUser继承了IdentityUser,当您进行迁移时,它会默认创建具有这些属性的表。您可以按 F12IdentityUser在 vs 中检查模型(查看IdentityUser<string>它继承的)。映射配置文件.cs:public class MappingProfile : Profile{     public MappingProfile()     {         CreateMap<AccountModel, ApplicationUser>();     } }
随时随地看视频慕课网APP
我要回答