private void Import() { var repositoryType = typeof(IRepository <>).MakeGenericType(TargetType); var insertOrGetMethod = repositoryType.GetMethod("InsertOrGetWithEquality"); var saveMethod = repositoryType.GetMethod("Save"); var accountProperty = TargetType.GetProperties() .Single(info => info.PropertyType.IsInstanceOfType(OwningEntity)); var repository = ComponentContext.Resolve(repositoryType); var toInsert = FileParser.Parse(Source).ToList(); toInsert = Order(toInsert); if (UniqueIdGroupingFunc != null) { var grouping = toInsert.GroupBy(UniqueIdGroupingFunc); foreach (var group in grouping) { var uniqueId = 1; var subList = Order(group); foreach (var bankTransactionEntity in subList) { var prop = bankTransactionEntity.GetType().GetProperty("UniqueId"); prop.SetValue(bankTransactionEntity, uniqueId++); } } } foreach (var entity in toInsert) { accountProperty.SetValue(entity, OwningEntity); var persistedEntity = insertOrGetMethod.Invoke(repository, new[] { entity }); } saveMethod.Invoke(repository, null); }
public MainView() { applicationService = ComponentContext.Resolve <IApplicationService>(); Pages = new ObservableCollection <PageTabItem>(); DataContext = this; InitializeComponent(); InitializeEventHandlers(); }
private object GetOwningEntity(AccountType accountType, long accountId) { var repositoryType = typeof(IRepository <>).MakeGenericType(accountType.GetAccountType()); var getById = repositoryType.GetMethod("GetById"); var repository = ComponentContext.Resolve(repositoryType); return(getById.Invoke(repository, new object[] { accountId })); }
public TagReadRpcServerHandler( ILoggerFactory loggerFactory, IComponentContext componentContext ) : base(loggerFactory, componentContext) { if (ComponentContext.IsRegistered <IBiz>()) { _biz = ComponentContext.Resolve <IBiz>(); } else { Logger.LogError("IBiz not Registered!"); } }
public ConnectionStatusRpcHandler( ILoggerFactory loggerFactory, IComponentContext componentContext ) : base(loggerFactory, componentContext) { if (ComponentContext.IsRegistered <IBiz>()) { _biz = ComponentContext.Resolve <IBiz>(); } else { Logger.LogError("IBiz not Registered!"); } }