首页 > 其他 > 详细

NopCommerce4.2 常见错误及异常处理 - Lazy-loaded navigation properties must have backing fields

时间:2019-11-25 00:05:28      阅读:176      评论:0      收藏:0      [点我收藏+]

An error occurred while starting the application.

InvalidOperationException: No field was found backing property ‘WeiActivityWinInfos‘ of entity type ‘WeiActivityInfo‘. Lazy-loaded navigation properties must have backing fields. Either name the backing field so that it is picked up by convention or configure the backing field to use.

Microsoft.EntityFrameworkCore.Infrastructure.ModelValidator.ValidateFieldMapping(IModel model)

InvalidOperationException: No field was found backing property ‘WeiActivityWinInfos‘ of entity type ‘WeiActivityInfo‘. Lazy-loaded navigation properties must have backing fields. Either name the backing field so that it is picked up by convention or configure the backing field to use.

出现以上问题,主要是导航属性命名不规范导致的

错误代码

  public partial class WeiActivityInfo : BaseEntity
    {

        private ICollection<WeiActivityWinInfo> _weiActivityWinInfo;
   
        public virtual ICollection<WeiActivityWinInfo> WeiActivityWinInfos
        {
            get { return _weiActivityWinInfo?? (_weiActivityWinInfo= new List<WeiActivityWinInfo>()); }
            protected set { _weiActivityWinInfo= value; }
        }
    }

 

 EF 导航配置命名上要保持一致,否则可能到这个错误,正确的配置,保证

private与public 属性集合名称一致!

 

public partial class WeiActivityInfo : BaseEntity
    {

        private ICollection<WeiActivityWinInfo> _weiActivityWinInfos;
   
        public virtual ICollection<WeiActivityWinInfo> WeiActivityWinInfos
        {
            get { return _weiActivityWinInfos?? (_weiActivityWinInfos= new List<WeiActivityWinInfo>()); }
            protected set { _weiActivityWinInfos= value; }
        }
    }

 

NopCommerce4.2 常见错误及异常处理 - Lazy-loaded navigation properties must have backing fields

原文:https://www.cnblogs.com/chenyuxi/p/11924760.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!