本文整理汇总了C#中System.Data.Entity.Edm.EdmModel.AddEntitySet方法的典型用法代码示例。如果您正苦于以下问题:C# EdmModel.AddEntitySet方法的具体用法?C# EdmModel.AddEntitySet怎么用?C# EdmModel.AddEntitySet使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Data.Entity.Edm.EdmModel
的用法示例。
在下文中一共展示了EdmModel.AddEntitySet方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Apply_should_uniquify_names
public void Apply_should_uniquify_names()
{
var model = new EdmModel().Initialize();
model.AddEntitySet("Cats", new EdmEntityType());
var entitySet = model.AddEntitySet("Cat", new EdmEntityType());
((IEdmConvention<EdmEntitySet>)new PluralizingEntitySetNameConvention())
.Apply(entitySet, model);
Assert.Equal("Cats1", entitySet.Name);
}
示例2: Generate_should_correctly_map_string_primitive_property_facets
public void Generate_should_correctly_map_string_primitive_property_facets()
{
var model = new EdmModel().Initialize();
var entityType = model.AddEntityType("E");
entityType.SetClrType(typeof(object));
model.AddEntitySet("ESet", entityType);
var property = entityType.AddPrimitiveProperty("P");
property.PropertyType.EdmType = EdmPrimitiveType.String;
property.PropertyType.IsNullable = false;
property.PropertyType.PrimitiveTypeFacets.IsFixedLength = true;
property.PropertyType.PrimitiveTypeFacets.IsMaxLength = true;
property.PropertyType.PrimitiveTypeFacets.IsUnicode = true;
property.PropertyType.PrimitiveTypeFacets.MaxLength = 42;
property.PropertyType.PrimitiveTypeFacets.Precision = 23;
property.PropertyType.PrimitiveTypeFacets.Scale = 77;
property.SetStoreGeneratedPattern(DbStoreGeneratedPattern.Identity);
var databaseMapping = new DatabaseMappingGenerator(ProviderRegistry.Sql2008_ProviderManifest).Generate(model);
var column = databaseMapping.GetEntityTypeMapping(entityType).TypeMappingFragments.Single().PropertyMappings.Single().Column;
Assert.False(column.IsNullable);
Assert.Null(column.Facets.IsFixedLength);
Assert.Equal(true, column.Facets.IsMaxLength);
Assert.Null(column.Facets.IsUnicode);
Assert.Equal(42, column.Facets.MaxLength);
Assert.Null(column.Facets.Precision);
Assert.Null(column.Facets.Scale);
Assert.Equal(DbStoreGeneratedPattern.Identity, column.StoreGeneratedPattern);
}
示例3: Configure_should_configure_entity_set_name
public void Configure_should_configure_entity_set_name()
{
var model = new EdmModel().Initialize();
var entityType = new EdmEntityType { Name = "E" };
var entitySet = model.AddEntitySet("ESet", entityType);
var entityTypeConfiguration = new EntityTypeConfiguration(typeof(object)) { EntitySetName = "MySet" };
entityTypeConfiguration.Configure(entityType, model);
Assert.Equal("MySet", entitySet.Name);
Assert.Same(entityTypeConfiguration, entitySet.GetConfiguration());
}
示例4: CreateSimpleModel
private static DbDatabaseMapping CreateSimpleModel(double version)
{
var model = new EdmModel().Initialize(version);
var entityType = model.AddEntityType("E");
entityType.SetClrType(typeof(object));
model.AddEntitySet("ESet", entityType);
var property = entityType.AddPrimitiveProperty("Id");
property.PropertyType.EdmType = EdmPrimitiveType.Int32;
property.PropertyType.IsNullable = false;
entityType.DeclaredKeyProperties.Add(property);
return new DatabaseMappingGenerator(ProviderRegistry.Sql2008_ProviderManifest).Generate(model);
}
示例5: Generate_can_map_a_simple_entity_type_and_set
public void Generate_can_map_a_simple_entity_type_and_set()
{
var model = new EdmModel().Initialize();
var entityType = model.AddEntityType("E");
entityType.SetClrType(typeof(object));
entityType.AddPrimitiveProperty("P1").PropertyType.EdmType = EdmPrimitiveType.Int32;
entityType.AddPrimitiveProperty("P2").PropertyType.EdmType = EdmPrimitiveType.String;
var entitySet = model.AddEntitySet("ESet", entityType);
var databaseMapping = new DatabaseMappingGenerator(ProviderRegistry.Sql2008_ProviderManifest).Generate(model);
var entitySetMapping = databaseMapping.GetEntitySetMapping(entitySet);
Assert.NotNull(entitySetMapping);
Assert.Same(entitySet, entitySetMapping.EntitySet);
var entityTypeMapping = entitySetMapping.EntityTypeMappings.Single();
Assert.Same(entityType, entityTypeMapping.EntityType);
Assert.NotNull(entityTypeMapping.TypeMappingFragments.Single().Table);
Assert.Equal("E", entityTypeMapping.TypeMappingFragments.Single().Table.Name);
Assert.Equal(2, entityTypeMapping.TypeMappingFragments.Single().Table.Columns.Count);
Assert.Equal(typeof(object), entityTypeMapping.GetClrType());
}
示例6: GetValidationErrors_should_return_validation_errors
public void GetValidationErrors_should_return_validation_errors()
{
var model = new EdmModel().Initialize();
model.AddEntitySet("S", new EdmEntityType());
var validationErrors = model.GetCsdlErrors();
Assert.Equal(1, validationErrors.Count());
}
示例7: RemoveEntityType_should_remove_type_and_set
public void RemoveEntityType_should_remove_type_and_set()
{
var model = new EdmModel().Initialize();
var entityType = model.AddEntityType("Foo");
model.AddEntitySet("FooSet", entityType);
model.RemoveEntityType(entityType);
Assert.Equal(0, model.GetEntityTypes().Count());
Assert.Equal(0, model.Containers.First().EntitySets.Count());
}
示例8: AddEntitySet_should_create_and_add_to_default_container
public void AddEntitySet_should_create_and_add_to_default_container()
{
var model = new EdmModel().Initialize();
var entityType = model.AddEntityType("Foo");
var entitySet = model.AddEntitySet("FooSet", entityType);
Assert.NotNull(entitySet);
Assert.Equal("FooSet", entitySet.Name);
Assert.Same(entityType, entitySet.ElementType);
Assert.True(model.Containers.Single().EntitySets.Contains(entitySet));
}
示例9: GetAssociationSet_should_return_association_set
public void GetAssociationSet_should_return_association_set()
{
var model = new EdmModel().Initialize();
var entityType = model.AddEntityType("Foo");
model.AddEntitySet("FooSet", entityType);
var associationType = new EdmAssociationType().Initialize();
associationType.SourceEnd.EntityType = entityType;
associationType.TargetEnd.EntityType = entityType;
model.AddAssociationSet("FooSet", associationType);
var associationSet = model.GetAssociationSet(associationType);
Assert.NotNull(associationSet);
Assert.Same(associationType, associationSet.ElementType);
}
示例10: GetEntitySet_should_return_entity_set
public void GetEntitySet_should_return_entity_set()
{
var model = new EdmModel().Initialize();
var entityType = model.AddEntityType("Foo");
model.AddEntitySet("FooSet", entityType);
var entitySet = model.GetEntitySet(entityType);
Assert.NotNull(entitySet);
Assert.Same(entityType, entitySet.ElementType);
}
示例11: GetEntitySets_should_return_all_sets
public void GetEntitySets_should_return_all_sets()
{
var model = new EdmModel().Initialize();
model.AddEntitySet("S", new EdmEntityType());
model.AddEntitySet("T", new EdmEntityType());
Assert.Equal(2, model.GetEntitySets().Count());
}
示例12: Validate_should_throw
public void Validate_should_throw()
{
var model = new EdmModel().Initialize();
model.AddEntitySet("S", new EdmEntityType());
Assert.Throws<ModelValidationException>(() => model.ValidateCsdl());
}
示例13: Generate_maps_abstract_type_hierarchies_correctly
public void Generate_maps_abstract_type_hierarchies_correctly()
{
var model = new EdmModel().Initialize();
var rootEntityType = model.AddEntityType("E");
rootEntityType.SetClrType(typeof(object));
rootEntityType.AddPrimitiveProperty("P1").PropertyType.EdmType = EdmPrimitiveType.Int32;
rootEntityType.DeclaredKeyProperties.Add(rootEntityType.Properties.First());
rootEntityType.AddPrimitiveProperty("P2").PropertyType.EdmType = EdmPrimitiveType.String;
model.AddEntitySet("ESet", rootEntityType);
var entityType2 = model.AddEntityType("E2");
entityType2.AddPrimitiveProperty("P3").PropertyType.EdmType = EdmPrimitiveType.Decimal;
entityType2.SetClrType(typeof(string));
entityType2.IsAbstract = true;
entityType2.BaseType = rootEntityType;
var entityType3 = model.AddEntityType("E3");
entityType3.SetClrType(typeof(int));
entityType3.AddPrimitiveProperty("P4").PropertyType.EdmType = EdmPrimitiveType.Int32;
entityType3.BaseType = entityType2;
var databaseMapping = new DatabaseMappingGenerator(ProviderRegistry.Sql2008_ProviderManifest).Generate(model);
var entityType1Mapping = databaseMapping.GetEntityTypeMapping(rootEntityType);
var entityType3Mapping = databaseMapping.GetEntityTypeMapping(entityType3);
Assert.Equal(2, entityType1Mapping.TypeMappingFragments.Single().PropertyMappings.Count);
Assert.Equal("P1", entityType1Mapping.TypeMappingFragments.Single().PropertyMappings[0].Column.Name);
Assert.Equal("P2", entityType1Mapping.TypeMappingFragments.Single().PropertyMappings[1].Column.Name);
Assert.Equal(4, entityType3Mapping.TypeMappingFragments.Single().PropertyMappings.Count);
Assert.Equal("P1", entityType3Mapping.TypeMappingFragments.Single().PropertyMappings[0].Column.Name);
Assert.Equal("P2", entityType3Mapping.TypeMappingFragments.Single().PropertyMappings[1].Column.Name);
Assert.Equal("P3", entityType3Mapping.TypeMappingFragments.Single().PropertyMappings[2].Column.Name);
Assert.Equal("P4", entityType3Mapping.TypeMappingFragments.Single().PropertyMappings[3].Column.Name);
var table = entityType1Mapping.TypeMappingFragments.Single().Table;
Assert.Equal(5, table.Columns.Count);
}
示例14: Generate_can_map_type_hierarchies_using_Tph
public void Generate_can_map_type_hierarchies_using_Tph()
{
var model = new EdmModel().Initialize();
var rootEntityType = model.AddEntityType("E");
rootEntityType.SetClrType(typeof(object));
rootEntityType.AddPrimitiveProperty("P1").PropertyType.EdmType = EdmPrimitiveType.Int32;
rootEntityType.AddPrimitiveProperty("P2").PropertyType.EdmType = EdmPrimitiveType.String;
var entitySet = model.AddEntitySet("ESet", rootEntityType);
var entityType2 = model.AddEntityType("E2");
entityType2.AddPrimitiveProperty("P3").PropertyType.EdmType = EdmPrimitiveType.Decimal;
entityType2.SetClrType(typeof(string));
entityType2.BaseType = rootEntityType;
var entityType3 = model.AddEntityType("E3");
entityType3.SetClrType(typeof(int));
entityType3.AddPrimitiveProperty("P4").PropertyType.EdmType = EdmPrimitiveType.Int32;
entityType3.BaseType = entityType2;
var databaseMapping = new DatabaseMappingGenerator(ProviderRegistry.Sql2008_ProviderManifest).Generate(model);
var entitySetMapping = databaseMapping.GetEntitySetMapping(entitySet);
Assert.NotNull(entitySetMapping);
var entityTypeMappings = entitySetMapping.EntityTypeMappings;
Assert.Equal(3, entityTypeMappings.Count);
var entityType1Mapping = databaseMapping.GetEntityTypeMapping(rootEntityType);
var entityType2Mapping = databaseMapping.GetEntityTypeMapping(entityType2);
var entityType3Mapping = databaseMapping.GetEntityTypeMapping(entityType3);
Assert.Equal(2, entityType1Mapping.TypeMappingFragments.Single().PropertyMappings.Count);
Assert.Equal(3, entityType2Mapping.TypeMappingFragments.Single().PropertyMappings.Count);
Assert.Equal(4, entityType3Mapping.TypeMappingFragments.Single().PropertyMappings.Count);
var table = entityType1Mapping.TypeMappingFragments.Single().Table;
Assert.Same(table, entityType2Mapping.TypeMappingFragments.Single().Table);
Assert.Same(table, entityType3Mapping.TypeMappingFragments.Single().Table);
Assert.Equal(5, table.Columns.Count);
Assert.Equal("P1", table.Columns[0].Name);
Assert.Equal("P2", table.Columns[1].Name);
Assert.Equal("P3", table.Columns[2].Name);
Assert.Equal("P4", table.Columns[3].Name);
Assert.Equal("Discriminator", table.Columns[4].Name);
}
示例15: Generate_can_map_foreign_key_association_type
public void Generate_can_map_foreign_key_association_type()
{
var model = new EdmModel().Initialize();
var principalEntityType = model.AddEntityType("P");
principalEntityType.SetClrType(typeof(object));
var dependentEntityType = model.AddEntityType("D");
dependentEntityType.SetClrType(typeof(string));
var dependentProperty1 = dependentEntityType.AddPrimitiveProperty("FK1");
dependentProperty1.PropertyType.EdmType = EdmPrimitiveType.Int32;
var dependentProperty2 = dependentEntityType.AddPrimitiveProperty("FK2");
dependentProperty2.PropertyType.EdmType = EdmPrimitiveType.String;
model.AddEntitySet("PSet", principalEntityType);
model.AddEntitySet("DSet", dependentEntityType);
var associationType
= model.AddAssociationType("P_D",
principalEntityType, EdmAssociationEndKind.Required,
dependentEntityType, EdmAssociationEndKind.Many);
associationType.Constraint
= new EdmAssociationConstraint
{
DependentEnd = associationType.TargetEnd,
DependentProperties = new[] { dependentProperty1, dependentProperty2 },
};
associationType.SourceEnd.DeleteAction = EdmOperationAction.Cascade;
var databaseMapping = new DatabaseMappingGenerator(ProviderRegistry.Sql2008_ProviderManifest).Generate(model);
var dependentTable = databaseMapping.GetEntityTypeMapping(dependentEntityType).TypeMappingFragments.Single().Table;
var foreignKeyConstraint = dependentTable.ForeignKeyConstraints.Single();
Assert.Equal(2, dependentTable.Columns.Count());
Assert.Equal(2, foreignKeyConstraint.DependentColumns.Count);
Assert.Equal(DbOperationAction.Cascade, foreignKeyConstraint.DeleteAction);
Assert.Equal(associationType.Name, foreignKeyConstraint.Name);
var foreignKeyColumn = foreignKeyConstraint.DependentColumns.First();
Assert.False(foreignKeyColumn.IsNullable);
Assert.Equal("FK1", foreignKeyColumn.Name);
}