Automaapper 无法映射几个字段。并在这些字段中输入空值
Automaapper fails to map few fields. And enter null values to those fields
当我使用 LINQ 从 table 检索数据时,所有列都有值。但是在我将它映射到我的模型之后,一些字段被映射为 null.The 奇怪的部分是所有 tables
都没有发生这种情况
这是代码
var city = db.tbl_city.ToList();
AutoMapper.Mapper.CreateMap<tbl_city, ModelCities>();
var CityVieModel = AutoMapper.Mapper.Map<List<tbl_city>, List<ModelCities>>(city);
自定义模型的代码
public class ModelCities
{
public int CityId { get; set; }
public string CityName { get; set; }
}
edmx 中 table 城市的代码是
public partial class tbl_city
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public tbl_city()
{
this.tbl_areas = new HashSet<tbl_areas>();
}
public int CityId { get; set; }
public string Cityame { get; set; }
public int StateId { get; set; }
public Nullable<bool> IsAlias { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<tbl_areas> tbl_areas { get; set; }
public virtual tbl_state tbl_state { get; set; }
}
在你的tbl_cityclass中有以下属性
public string Cityame { get; set; }
属性 的名称不正确,并且根据 Automapper 映射属性的问题,因为它依赖于属性的名称来建立映射,请修复此问题 属性 名称如下
public string CityName { get; set; }
当我使用 LINQ 从 table 检索数据时,所有列都有值。但是在我将它映射到我的模型之后,一些字段被映射为 null.The 奇怪的部分是所有 tables
都没有发生这种情况这是代码
var city = db.tbl_city.ToList();
AutoMapper.Mapper.CreateMap<tbl_city, ModelCities>();
var CityVieModel = AutoMapper.Mapper.Map<List<tbl_city>, List<ModelCities>>(city);
自定义模型的代码
public class ModelCities
{
public int CityId { get; set; }
public string CityName { get; set; }
}
edmx 中 table 城市的代码是
public partial class tbl_city
{
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2214:DoNotCallOverridableMethodsInConstructors")]
public tbl_city()
{
this.tbl_areas = new HashSet<tbl_areas>();
}
public int CityId { get; set; }
public string Cityame { get; set; }
public int StateId { get; set; }
public Nullable<bool> IsAlias { get; set; }
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Usage", "CA2227:CollectionPropertiesShouldBeReadOnly")]
public virtual ICollection<tbl_areas> tbl_areas { get; set; }
public virtual tbl_state tbl_state { get; set; }
}
在你的tbl_cityclass中有以下属性
public string Cityame { get; set; }
属性 的名称不正确,并且根据 Automapper 映射属性的问题,因为它依赖于属性的名称来建立映射,请修复此问题 属性 名称如下
public string CityName { get; set; }