大佬教程收集整理的这篇文章主要介绍了c# – Automapper Custom Resolver – 将Repository注入构造函数,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
这是我到目前为止的代码……
public class FollowingResolver : ValueResolver<Audio,bool> { readonly IIdentityTasks identityTasks; public FollowingResolver(IIdentityTasks identitTasks) { this.identityTasks = identitTasks; } protected override bool ResolveCore(Audio sourcE) { var user = identityTasks.GetCurrentIdentity(); if (user != null) return user.IsFollowingUser(source.DJAccount); return false; } }
但是我收到此错误:
FollowingResolver' does not have a default constructor
我尝试添加一个默认的contrstructor,但我的存储库永远不会被初始化.
这是我的autoampper初始化代码:
public static void Configure(IWindsorContainer container) { Mapper.Reset(); Mapper.Initialize(x => { x.AddProfile<AccountProfile>(); x.AddProfile<AudioProfile>(); x.ConstructservicesUsing(container.ResolvE); }); Mapper.AssertConfigurationIsValid(); }
我错过了什么,甚至可能这样做,还是我错过了这里的船?
我不得不补充:
@H_626_9@mapper.Initialize(map => { map.ConstructservicesUsing(_container.ResolvE); });
在Mapper.CreateMap@L_262_18@之前.
像这样创建了一个ValueResolverInstaller:
public class ValueResolverInstaller : IWindsorInstaller { public void Install(IWindsorContainer container,IConfigurationStore storE) { container.Register(Classes.FromThisAssembly() .basedOn<IValueResolver>() .LifestyleTransient()); } }
和ValueResolver本身:
public class DivergencesResolver : ValueResolver<MyClass,int> { private Assessmentservice assessmentservice; public DivergencesResolver(Assessmentservice assessmentservicE) { this.assessmentservice = assessmentservice; } protected overridE int ResolveCore(MyClass C) { return assessmentservice.GetAssessmentDivergences(c.AssessmentId).Count(); } }
以上是大佬教程为你收集整理的c# – Automapper Custom Resolver – 将Repository注入构造函数全部内容,希望文章能够帮你解决c# – Automapper Custom Resolver – 将Repository注入构造函数所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。