public async Task Create_Website_Test() { Guid websitekey = Guid.NewGuid(); var container = new UnityContainer(); var websiteMaster = WebsiteMaster.CreateWebsiteMaster( "Emdeon Script", "http://portal.nmm.cc/nmm/en/index.jsp", "CFC", Guid.NewGuid(), 117 ); Func <WebsiteMaster, string, Task <Guid> > CreateWebsiteRecord = async(website, connectionString) => { using (IDbConnection db = new SqlConnection(ConfigurationManager.ConnectionStrings[connectionString].ConnectionString)) { container.RegisterType <ISmartAgentRepo, CreateSmartAgentUserRepo>(new InjectionConstructor(db)); var repo = container.Resolve <ISmartAgentRepo>(); return(await repo.CreateWebsiteMasterRecord(website)); } }; Func <string, string, Task <WebsiteMaster> > FindWebsiteRecord = async(searchTerm, connectionString) => { using (IDbConnection db = new SqlConnection(ConfigurationManager.ConnectionStrings[connectionString].ConnectionString)) { container.RegisterType <ISmartAgentRepo, CreateSmartAgentUserRepo>(new InjectionConstructor(db)); var repo = container.Resolve <ISmartAgentRepo>(); return(await repo.FindWebsiteRecord(searchTerm)); } }; var dataSource = _devSmartAgent; var prodDataSource = _prodSmartAgentDb; var result = await FindWebsiteRecord(websiteMaster.WebsiteDescription, dataSource); if (result == null) { websitekey = await CreateWebsiteRecord(websiteMaster, dataSource); write(websitekey); } write(result.WebsiteDescription + " " + result.WebsiteKey); var result2 = await FindWebsiteRecord(websiteMaster.WebsiteDescription, prodDataSource); if (result2 == null) { websitekey = await CreateWebsiteRecord(websiteMaster, prodDataSource); write(websitekey); } write(result.WebsiteDescription + " " + result.WebsiteKey); }