public WebValidationServiceController(SPConnection sourceCreds, SPConnection targetCreds, IUserMapping userMapping, ILogger logger) { var container = new UnityContainer(); container.RegisterType <ISharePointRepository, SharePointRepository>(); this.SharePointRepository = container.Resolve <ISharePointRepository>( new ParameterOverrides { { "logger", logger } }); container.RegisterType <ISharePointRepository2007, SharePointRepository2007>(); this.SharePointRepository2007 = container.Resolve <ISharePointRepository2007>( new ParameterOverrides { { "logger", logger } }); this.SourceSiteCreds = sourceCreds; this.TargetSiteCreds = targetCreds; if (sourceCreds.SiteType == SiteType.WSS) { this.SourceWSSContext = this.SharePointRepository2007.GetSPContext(SourceSiteCreds.SiteUrl, SourceSiteCreds.UserName, SourceSiteCreds.Password); } else if (sourceCreds.SiteType == SiteType.SharePointOnPremises) { this.SourceClientContext = this.SharePointRepository.GetSP2013Context(SourceSiteCreds.SiteUrl, SourceSiteCreds.UserName, SourceSiteCreds.Password, SourceSiteCreds.Domain); } else { this.SourceClientContext = this.SharePointRepository.GetSPOContext(SourceSiteCreds.SiteUrl, SourceSiteCreds.UserName, SourceSiteCreds.Password); } if (targetCreds.SiteType == SiteType.WSS) { this.TargetWSSContext = this.SharePointRepository2007.GetSPContext(TargetSiteCreds.SiteUrl, TargetSiteCreds.UserName, TargetSiteCreds.Password); } else if (targetCreds.SiteType == SiteType.SharePointOnPremises) { this.TargetClientContext = this.SharePointRepository.GetSP2013Context(TargetSiteCreds.SiteUrl, TargetSiteCreds.UserName, TargetSiteCreds.Password, TargetSiteCreds.Domain); } else { this.TargetClientContext = this.SharePointRepository.GetSPOContext(TargetSiteCreds.SiteUrl, TargetSiteCreds.UserName, TargetSiteCreds.Password); } this.UserMapping = userMapping; this.logger = logger; }
public WSSContext GetSPContext(string siteUrl, string user, string password, string domain = "") { SPContext = new WSSContext(siteUrl, user, password, domain); return(SPContext); }