C# 找到未映射的成员(即使忽略该属性)

C# 找到未映射的成员(即使忽略该属性),c#,automapper,C#,Automapper,我正在竭尽全力想弄清楚这个问题。我在整个项目中使用了AutoMapper,我从未遇到过这个具体问题。它抱怨一个未映射的属性,但我告诉它忽略该属性,它仍然给出错误 以下是我从中映射的模型(UserDefinedFieldViewModel): 这是我要映射到的模型(UserDefinedField): 我得到的确切错误是: 找到了未映射的成员。查看下面的类型和成员。 添加自定义映射表达式、忽略、添加自定义解析程序或修改源/目标类型 对于无匹配构造函数,请添加无参数构造函数、添加可选参数或映射所有构

我正在竭尽全力想弄清楚这个问题。我在整个项目中使用了
AutoMapper
,我从未遇到过这个具体问题。它抱怨一个未映射的属性,但我告诉它忽略该属性,它仍然给出错误

以下是我从中映射的模型(UserDefinedFieldViewModel):

这是我要映射到的模型(UserDefinedField):

我得到的确切错误是:

找到了未映射的成员。查看下面的类型和成员。 添加自定义映射表达式、忽略、添加自定义解析程序或修改源/目标类型

对于无匹配构造函数,请添加无参数构造函数、添加可选参数或映射所有构造函数参数

UserDefinedFieldViewModel->UserDefinedField(目标成员列表) Web.Areas.Admin.ViewModels.CustomFields.UserDefinedFieldViewModel->Models.Core.UserDefinedField(目标成员列表)

未映射属性: 狂欢

我只是不确定是什么导致了这个问题。我在整个项目中都做过这种类型的映射(包括只在实际模型上放置
OrgId
),没有出现这种错误

我试图忽略OrgId,看看这是否可行,但似乎也没有效果。以下是我的映射当前的样子:

x.CreateMap<UserDefinedFieldViewModel, UserDefinedField>().ForMember(dest => dest.OrgId, options => options.Ignore()).ReverseMap();
x.CreateMap().formMember(dest=>dest.OrgId,options=>options.Ignore()).ReverseMap();

我今天遇到了同样的错误。最后我发现我的映射器初始化不正确。如果您使用的是.NETCore,则需要创建一个从Automapper.profile继承的概要文件类,并在其构造函数中添加所有映射器配置。有关更多详细信息,请参阅此帖子:


重播就好了。@LucianBargaoanu现在没有时间这么做。但是如果我没有得到任何答案,那么我会试着做一个。我希望我只是缺少了一些明显的lol。请尝试
OrgId
属性上的
[IgnoreMap]
属性。加载映射配置文件时似乎出现问题。仔细检查在何处执行映射注册[或注册!]。对于这个sampe问题,我已经为另一个问题覆盖了当前注册。请发布您的映射器初始化代码以查找初始化问题。
public class UserDefinedField
{
    public string Id       { get; set; }
    public int OrgId       { get; set; }
    public UsedFor UsedFor { get; set; }
    public UserDefinedFieldDataType DataType { get; set; }
    public string FieldName     { get; set; }
    public string HelpText      { get; set; }
    public bool IsDeleted       { get; set; }
    public string CreateById    { get; set; }
    public DateTime CreateDate  { get; set; }
    public string LastModById   { get; set; }
    public DateTime LastModDate { get; set; }
}
x.CreateMap<UserDefinedFieldViewModel, UserDefinedField>().ForMember(dest => dest.OrgId, options => options.Ignore()).ReverseMap();