Exemple #1
0
 private DbFixture(bool useRelationalNulls, String databaseName, EdmModel edmModel, ModelBuilder.OeEdmModelMetadataProvider metadataProvider)
 {
     _useRelationalNulls = useRelationalNulls;
     _databaseName       = databaseName;
     EdmModel            = edmModel;
     MetadataProvider    = metadataProvider;
 }
Exemple #2
0
        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);
        }
Exemple #3
0
        //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;
                }
            }
        }
Exemple #8
0
        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);
        }
Exemple #9
0
 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>();
 }
Exemple #12
0
 public OeSchemaBuilder(Db.OeDataAdapter dataAdapter, IEdmModel edmModel, ModelBuilder.OeEdmModelMetadataProvider modelMetadataProvider)
 {
     _dataAdapter      = dataAdapter;
     _edmModel         = edmModel;
     _graphTypeBuilder = new OeGraphTypeBuilder(modelMetadataProvider);
 }
Exemple #13
0
 private static EdmModel BuildEdmModel(Db.OeDataAdapter dataAdapter, ModelBuilder.OeEdmModelMetadataProvider metadataProvider)
 {
     return(new ModelBuilder.OeEdmModelBuilder(dataAdapter, metadataProvider).BuildEdmModel());
 }
 public DictionaryValueConverter(ModelBuilder.OeEdmModelMetadataProvider metadataProvider)
 {
     _metadataProvider = metadataProvider;
 }
Exemple #15
0
 public OeGraphTypeBuilder(ModelBuilder.OeEdmModelMetadataProvider modelMetadataProvider)
 {
     _modelMetadataProvider    = modelMetadataProvider;
     _clrTypeToObjectGraphType = new Dictionary <Type, IGraphType>();
 }
Exemple #16
0
 private DbFixture(bool useRelationalNulls, String databaseName, Db.OeDataAdapter dataAdapter, ModelBuilder.OeEdmModelMetadataProvider metadataProvider)
     : this(useRelationalNulls, databaseName, OrderContextOptions.BuildEdmModel(dataAdapter, metadataProvider), metadataProvider)
 {
 }