private DbFixture(bool useRelationalNulls, String databaseName, EdmModel edmModel, ModelBuilder.OeEdmModelMetadataProvider metadataProvider) { _useRelationalNulls = useRelationalNulls; _databaseName = databaseName; EdmModel = edmModel; MetadataProvider = metadataProvider; }
private static MemberExpression[] GetKeyExpressions(ModelBuilder.OeEdmModelMetadataProvider metadataProvider, Type entityType) { var keyPropertyList = new List <PropertyInfo>(); foreach (PropertyInfo property in entityType.GetProperties()) { if (metadataProvider.IsKey(property)) { keyPropertyList.Add(property); } } if (keyPropertyList.Count == 0) { PropertyInfo keyProperty = entityType.GetPropertyIgnoreCase("Id"); if (keyProperty == null) { throw new InvalidOperationException("Key not found in " + entityType.Name); } keyPropertyList.Add(keyProperty); } PropertyInfo[] keyProperties = keyPropertyList.ToArray(); metadataProvider.SortClrPropertyByOrder(keyProperties); var keyExpressions = new MemberExpression[keyProperties.Length]; ParameterExpression parameter = Expression.Parameter(entityType); for (int i = 0; i < keyProperties.Length; i++) { keyExpressions[i] = Expression.Property(parameter, keyProperties[i]); } return(keyExpressions); }
//private static readonly LoggerFactory MyLoggerFactory = new LoggerFactory(new[] {new ConsoleLoggerProvider((category, level) // => true, true) }); public static EdmModel BuildEdmModel(Db.OeDataAdapter dataAdapter, ModelBuilder.OeEdmModelMetadataProvider metadataProvider) { var order2DataAdapter = new Order2DataAdapter(false, true, "test2"); var refModel = new ModelBuilder.OeEdmModelBuilder(dataAdapter, metadataProvider).BuildEdmModel(); return(order2DataAdapter.BuildEdmModel(refModel)); }
public static EdmModel BuildEdmModel(Db.OeDataAdapter dataAdapter, ModelBuilder.OeEdmModelMetadataProvider metadataProvider) { bool allowCache = TestHelper.GetQueryCache(dataAdapter).AllowCache; var order2DataAdapter = new Order2DataAdapter(allowCache, true, "test2"); var refModel = new ModelBuilder.OeEdmModelBuilder(dataAdapter, metadataProvider).BuildEdmModel(); return(order2DataAdapter.BuildEdmModel(refModel)); }
public DbFixtureInitDb(bool clear = false) { _clear = clear; DataAdapter = new EfCore.OeEfCoreDataAdapter <OrderContext>(); MetadataProvider = new ModelBuilder.OeEdmModelMetadataProvider(); var modelBuilder = new ModelBuilder.OeEdmModelBuilder(DataAdapter, MetadataProvider); EdmModel = modelBuilder.BuildEdmModel(); }
private static IComparer GetComparer(ModelBuilder.OeEdmModelMetadataProvider metadataProvider, Type entityType) { if (_entityComaprers.TryGetValue(entityType, out IComparer comparer)) { return(comparer); } comparer = TestHelper.CreateEntryEqualityComparer(metadataProvider, entityType); _entityComaprers.TryAdd(entityType, comparer); return(comparer); }
public TestContractResolver(ModelBuilder.OeEdmModelMetadataProvider metadataProvider, IReadOnlyList <IncludeVisitor.Include> includes) { _metadataProvider = metadataProvider; _includes = new Dictionary <String, Func <IEnumerable, IList> >(); if (includes != null) { foreach (IncludeVisitor.Include include in includes) { _includes[include.Property.DeclaringType.FullName + "." + include.Property.Name] = include.Filter; } } }
public static void Compare(IList fromDb, IList fromOe, ModelBuilder.OeEdmModelMetadataProvider metadataProvider, IReadOnlyList <IncludeVisitor.Include> includes) { var contractResolver = new TestContractResolver(metadataProvider, includes); var settings = new JsonSerializerSettings() { ContractResolver = contractResolver, DateFormatString = "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'ffffff", DateTimeZoneHandling = DateTimeZoneHandling.Utc, Formatting = Newtonsoft.Json.Formatting.Indented, ReferenceLoopHandling = ReferenceLoopHandling.Ignore, NullValueHandling = NullValueHandling.Ignore }; String jsonDb = JsonConvert.SerializeObject(fromDb, settings); contractResolver.DisableWhereOrder = true; String jsonOe = JsonConvert.SerializeObject(fromOe, settings); Assert.Equal(jsonDb, jsonOe); }
public static Infrastructure.OeEntryEqualityComparer CreateEntryEqualityComparer(ModelBuilder.OeEdmModelMetadataProvider metadataProvider, Type entityType) { return(new Infrastructure.OeEntryEqualityComparer(GetKeyExpressions(metadataProvider, entityType))); }
public OeEntitySetMetaAdapterCollection(OeEntitySetMetaAdapter[] entitySetMetaAdapter, ModelBuilder.OeEdmModelMetadataProvider metadataProvider) : base(entitySetMetaAdapter) { _metadataProvider = metadataProvider; }
public IncludeVisitor(ModelBuilder.OeEdmModelMetadataProvider metadataProvider, bool isDatabaseNullHighestValue) { _metadataProvider = metadataProvider; _isDatabaseNullHighestValue = isDatabaseNullHighestValue; _includes = new List <EfInclude>(); }
public OeSchemaBuilder(Db.OeDataAdapter dataAdapter, IEdmModel edmModel, ModelBuilder.OeEdmModelMetadataProvider modelMetadataProvider) { _dataAdapter = dataAdapter; _edmModel = edmModel; _graphTypeBuilder = new OeGraphTypeBuilder(modelMetadataProvider); }
private static EdmModel BuildEdmModel(Db.OeDataAdapter dataAdapter, ModelBuilder.OeEdmModelMetadataProvider metadataProvider) { return(new ModelBuilder.OeEdmModelBuilder(dataAdapter, metadataProvider).BuildEdmModel()); }
public DictionaryValueConverter(ModelBuilder.OeEdmModelMetadataProvider metadataProvider) { _metadataProvider = metadataProvider; }
public OeGraphTypeBuilder(ModelBuilder.OeEdmModelMetadataProvider modelMetadataProvider) { _modelMetadataProvider = modelMetadataProvider; _clrTypeToObjectGraphType = new Dictionary <Type, IGraphType>(); }
private DbFixture(bool useRelationalNulls, String databaseName, Db.OeDataAdapter dataAdapter, ModelBuilder.OeEdmModelMetadataProvider metadataProvider) : this(useRelationalNulls, databaseName, OrderContextOptions.BuildEdmModel(dataAdapter, metadataProvider), metadataProvider) { }