本文整理汇总了C#中System.Data.Entity.Edm.EdmEntityType.AddPrimitiveProperty方法的典型用法代码示例。如果您正苦于以下问题:C# EdmEntityType.AddPrimitiveProperty方法的具体用法?C# EdmEntityType.AddPrimitiveProperty怎么用?C# EdmEntityType.AddPrimitiveProperty使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Data.Entity.Edm.EdmEntityType
的用法示例。
在下文中一共展示了EdmEntityType.AddPrimitiveProperty方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Apply_should_match_id_ahead_of_type_and_id
public void Apply_should_match_id_ahead_of_type_and_id()
{
var entityType = new EdmEntityType { Name = "Foo" };
var typeIdProperty = entityType.AddPrimitiveProperty("FooId");
var idProperty = entityType.AddPrimitiveProperty("Id");
typeIdProperty.PropertyType.EdmType = EdmPrimitiveType.Int32;
idProperty.PropertyType.EdmType = EdmPrimitiveType.Int32;
((IEdmConvention<EdmEntityType>)new IdKeyDiscoveryConvention()).Apply(entityType, new EdmModel());
Assert.Equal(1, entityType.DeclaredKeyProperties.Count);
Assert.True(entityType.DeclaredKeyProperties.Contains(idProperty));
}
示例2: Generate_should_map_scalar_properties_to_columns
public void Generate_should_map_scalar_properties_to_columns()
{
var databaseMapping = CreateEmptyModel();
var entityType = new EdmEntityType { Name = "E" };
entityType.AddPrimitiveProperty("P1").PropertyType.EdmType = EdmPrimitiveType.Int32;
entityType.AddPrimitiveProperty("P2").PropertyType.EdmType = EdmPrimitiveType.String;
var entitySet = databaseMapping.Model.AddEntitySet("ESet", entityType);
entityType.SetClrType(typeof(object));
new EntityTypeMappingGenerator(ProviderRegistry.Sql2008_ProviderManifest).Generate(entityType, databaseMapping);
var entityTypeMappingFragment
= databaseMapping.GetEntitySetMapping(entitySet).EntityTypeMappings.Single().TypeMappingFragments.Single();
Assert.Equal(2, entityTypeMappingFragment.PropertyMappings.Count());
Assert.Equal(2, entityTypeMappingFragment.Table.Columns.Count());
}
示例3: Apply_should_move_declared_keys_head_of_declared_properties_list
public void Apply_should_move_declared_keys_head_of_declared_properties_list()
{
var entityType = new EdmEntityType();
entityType.SetClrType(typeof(SimpleEntity));
entityType.AddPrimitiveProperty("StaticProperty");
entityType.AddPrimitiveProperty("PrivateProperty");
entityType.AddPrimitiveProperty("InheritedPropertyB");
entityType.AddPrimitiveProperty("InheritedPropertyA");
entityType.AddPrimitiveProperty("PropertyB");
entityType.AddPrimitiveProperty("PropertyA");
entityType.DeclaredKeyProperties.Add(
entityType.AddPrimitiveProperty("Key"));
((IEdmConvention<EdmEntityType>)new DeclaredPropertyOrderingConvention())
.Apply(entityType, new EdmModel());
Assert.True(
entityType.DeclaredProperties.Select(e => e.Name)
.SequenceEqual(
new[]
{
"Key", "PrivateProperty", "PropertyA", "PropertyB", "InheritedPropertyA", "InheritedPropertyB",
"StaticProperty"
}));
}
示例4: Apply_should_ignore_non_primitive_type
public void Apply_should_ignore_non_primitive_type()
{
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("Id");
((IEdmConvention<EdmEntityType>)new IdKeyDiscoveryConvention()).Apply(entityType, new EdmModel());
Assert.False(entityType.DeclaredKeyProperties.Contains(property));
}
示例5: Apply_should_match_simple_id
public void Apply_should_match_simple_id()
{
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("Id");
property.PropertyType.EdmType = EdmPrimitiveType.Int32;
((IEdmConvention<EdmEntityType>)new IdKeyDiscoveryConvention()).Apply(entityType, new EdmModel());
Assert.True(entityType.DeclaredKeyProperties.Contains(property));
}
示例6: Apply_should_ignore_case
public void Apply_should_ignore_case()
{
var entityType = new EdmEntityType { Name = "Foo" };
var property = entityType.AddPrimitiveProperty("foOid");
property.PropertyType.EdmType = EdmPrimitiveType.Int32;
((IEdmConvention<EdmEntityType>)new IdKeyDiscoveryConvention()).Apply(entityType, new EdmModel());
Assert.True(entityType.DeclaredKeyProperties.Contains(property));
}
示例7: Apply_should_make_key_not_nullable
public void Apply_should_make_key_not_nullable()
{
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("Id");
property.PropertyType.EdmType = EdmPrimitiveType.Int32;
((IEdmConvention<EdmEntityType>)new IdKeyDiscoveryConvention()).Apply(entityType, new EdmModel());
Assert.False(property.PropertyType.IsNullable.Value);
}
示例8: GetPrimitiveProperties_should_return_only_primitive_properties
public void GetPrimitiveProperties_should_return_only_primitive_properties()
{
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("Foo");
property.PropertyType.EdmType = EdmPrimitiveType.DateTime;
entityType.AddComplexProperty("Bar", new EdmComplexType());
Assert.Equal(1, entityType.GetDeclaredPrimitiveProperties().Count());
Assert.True(entityType.GetDeclaredPrimitiveProperties().Contains(property));
}
示例9: Configure_should_configure_properties
public void Configure_should_configure_properties()
{
var entityType = new EdmEntityType { Name = "E" };
var property = entityType.AddPrimitiveProperty("P");
property.PropertyType.EdmType = EdmPrimitiveType.Int32;
var entityTypeConfiguration = new EntityTypeConfiguration(typeof(object));
var mockPropertyConfiguration = new Mock<PrimitivePropertyConfiguration>();
var mockPropertyInfo = new MockPropertyInfo();
property.SetClrPropertyInfo(mockPropertyInfo);
entityTypeConfiguration.Property(new PropertyPath(mockPropertyInfo), () => mockPropertyConfiguration.Object);
entityTypeConfiguration.Configure(entityType, new EdmModel());
mockPropertyConfiguration.Verify(p => p.Configure(property));
}
示例10: Configure_should_add_properties_to_dependent_properties
public void Configure_should_add_properties_to_dependent_properties()
{
var mockPropertyInfo = new MockPropertyInfo(typeof(int), "P");
var constraintConfiguration = new ForeignKeyConstraintConfiguration(new[] { mockPropertyInfo.Object });
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("P");
property.PropertyType.EdmType = EdmPrimitiveType.Int32;
property.SetClrPropertyInfo(mockPropertyInfo);
var associationType = new EdmAssociationType().Initialize();
associationType.SourceEnd.EntityType = entityType;
constraintConfiguration.Configure(
associationType, associationType.SourceEnd, new EntityTypeConfiguration(typeof(object)));
Assert.Equal(1, associationType.Constraint.DependentProperties.Count);
}
示例11: Configure_should_propagate_end_kind_to_keys_when_required
public void Configure_should_propagate_end_kind_to_keys_when_required()
{
var mockPropertyInfo = new MockPropertyInfo(typeof(int), "P");
var constraintConfiguration = new ForeignKeyConstraintConfiguration(new[] { mockPropertyInfo.Object });
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("P");
property.PropertyType.EdmType = EdmPrimitiveType.Int32;
property.PropertyType.IsNullable = true;
property.SetClrPropertyInfo(mockPropertyInfo);
var associationType = new EdmAssociationType().Initialize();
associationType.SourceEnd.EntityType = entityType;
associationType.TargetEnd.EndKind = EdmAssociationEndKind.Required;
constraintConfiguration.Configure(
associationType, associationType.SourceEnd, new EntityTypeConfiguration(typeof(object)));
Assert.Equal(1, associationType.Constraint.DependentProperties.Count);
Assert.Equal(false, property.PropertyType.IsNullable);
}
示例12: CreateModelFixture
private static EdmModel CreateModelFixture(
out EdmEntityType declaringEntityType, out EdmEntityType complexEntityType)
{
var model = new EdmModel().Initialize();
declaringEntityType = model.AddEntityType("E");
complexEntityType = model.AddEntityType("C");
complexEntityType.AddPrimitiveProperty("P");
var associationType
= model.AddAssociationType(
"A",
declaringEntityType, EdmAssociationEndKind.Many,
complexEntityType, EdmAssociationEndKind.Optional);
declaringEntityType.AddNavigationProperty("E.C", associationType);
return model;
}
示例13: Apply_should_ignore_when_key_already_specified
public void Apply_should_ignore_when_key_already_specified()
{
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("Id");
entityType.DeclaredKeyProperties.Add(new EdmProperty());
((IEdmConvention<EdmEntityType>)new IdKeyDiscoveryConvention()).Apply(entityType, new EdmModel());
Assert.False(entityType.DeclaredKeyProperties.Contains(property));
}
示例14: Apply_should_throw_if_two_type_Id_properties_are_matched_that_differ_only_by_case
[Fact] // Dev11 347225
public void Apply_should_throw_if_two_type_Id_properties_are_matched_that_differ_only_by_case()
{
var entityType = new EdmEntityType { Name = "Foo" };
var FOOIdProperty = entityType.AddPrimitiveProperty("FOOId");
var FooIdProperty = entityType.AddPrimitiveProperty("FooId");
FOOIdProperty.PropertyType.EdmType = EdmPrimitiveType.Int32;
FooIdProperty.PropertyType.EdmType = EdmPrimitiveType.Int32;
Assert.Equal(Strings.MultiplePropertiesMatchedAsKeys("FOOId", "Foo"), Assert.Throws<InvalidOperationException>(() => ((IEdmConvention<EdmEntityType>)new IdKeyDiscoveryConvention()).Apply(entityType, new EdmModel())).Message);
}
示例15: GetPrimitiveProperty_should_return_correct_property
public void GetPrimitiveProperty_should_return_correct_property()
{
var entityType = new EdmEntityType();
var property = entityType.AddPrimitiveProperty("Foo");
property.PropertyType.EdmType = EdmPrimitiveType.Guid;
var foundProperty = entityType.GetDeclaredPrimitiveProperty("Foo");
Assert.NotNull(foundProperty);
Assert.Same(property, foundProperty);
}