private static void RegisterTypes(IUnityContainer container) { RegisterFormHandlers(container); Policies policies = new Policies(new RaciB2CBicycleService(new Uri(ConfigurationManager.AppSettings["BicycleInsurance.ApiUrl"]))); container.RegisterInstance <IPolicies>(policies); BicyclePolicies bicyclePolicies = new BicyclePolicies(new RaciB2CBicycleService(new Uri(ConfigurationManager.AppSettings["BicycleInsurance.ApiUrl"]))); container.RegisterInstance <IBicyclePolicies>(bicyclePolicies); CoverOptions covers = new CoverOptions(new RaciB2CBicycleService(new Uri(ConfigurationManager.AppSettings["BicycleInsurance.ApiUrl"]))); container.RegisterInstance <ICoverOptions>(covers); ReferenceDatas referenceDatas = new ReferenceDatas(new RaciB2CBicycleService(new Uri(ConfigurationManager.AppSettings["BicycleInsurance.ApiUrl"]))); container.RegisterInstance <IReferenceDatas>(referenceDatas); IEmailService emailService = new SendGridEmailService ( ConfigurationManager.AppSettings["SendGrid.ApiKey"], ConfigurationManager.AppSettings["SendGrid.ConfirmationEmailTemplateId"], ConfigurationManager.AppSettings["SendGrid.QuoteSurveyEmailTemplateId"] ); container.RegisterInstance <IEmailService>(emailService); container.RegisterType <IReferenceDataService, ReferenceDataService>(new ContainerControlledLifetimeManager()); container.Configure <Interception>().SetDefaultInterceptorFor <ReferenceDataService>(new VirtualMethodInterceptor()); }
protected virtual DatDataReadException?Read(BinaryReader reader, int entryCount) { ReferenceDatas.Clear(); ReferenceDataOffsets.Clear(); DatDataReadException?ex = null; FieldDatas = new(entryCount); var lastPos = reader.BaseStream.Position; for (var i = 0; i < entryCount; ++i) { if (ex != null) { FieldDatas.Add(null); continue; } var row = new IFieldData[FieldDefinitions.Count]; var index = 0; foreach (var type in FieldDefinitions.Select(t => t.Value)) { try { if (type.StartsWith("array|")) { row[index++] = IArrayData.Read(reader, IFieldData.TypeFromString[type[6..]], this);