本文整理汇总了C#中System.Data.Entity.Core.Metadata.Edm.EntityType.AddColumn方法的典型用法代码示例。如果您正苦于以下问题:C# EntityType.AddColumn方法的具体用法?C# EntityType.AddColumn怎么用?C# EntityType.AddColumn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Data.Entity.Core.Metadata.Edm.EntityType
的用法示例。
在下文中一共展示了EntityType.AddColumn方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Apply_should_sort_unannotated_in_given_order
public void Apply_should_sort_unannotated_in_given_order()
{
var table = new EntityType("T", XmlConstants.TargetNamespace_3, DataSpace.SSpace);
table.AddColumn(
new EdmProperty(
"C",
ProviderRegistry.Sql2008_ProviderManifest.GetStoreType(
TypeUsage.Create(PrimitiveType.GetEdmPrimitiveType(PrimitiveTypeKind.String)))));
table.AddColumn(
new EdmProperty(
"Id",
ProviderRegistry.Sql2008_ProviderManifest.GetStoreType(
TypeUsage.Create(PrimitiveType.GetEdmPrimitiveType(PrimitiveTypeKind.String)))));
var database = new EdmModel().Initialize();
database.AddEntitySet("ES", table);
((IDbConvention<EntityType>)new ColumnOrderingConvention()).Apply(table, database);
Assert.Equal(2, table.Properties.Count);
Assert.Equal("C", table.Properties.First().Name);
}
示例2: AddColumn_should_set_properties_and_add_to_columns
public void AddColumn_should_set_properties_and_add_to_columns()
{
var table = new EntityType("T", XmlConstants.TargetNamespace_3, DataSpace.SSpace);
var tableColumn = new EdmProperty(
"Foo",
ProviderRegistry.Sql2008_ProviderManifest.GetStoreType(
TypeUsage.Create(PrimitiveType.GetEdmPrimitiveType(PrimitiveTypeKind.String))));
table.AddColumn(tableColumn);
Assert.NotNull(tableColumn);
Assert.Equal("Foo", tableColumn.Name);
Assert.True(table.Properties.Contains(tableColumn));
}
示例3: Apply_should_sort_annotated_before_unannotated
public void Apply_should_sort_annotated_before_unannotated()
{
var table = new EntityType("T", XmlConstants.TargetNamespace_3, DataSpace.SSpace);
var columnA = new EdmProperty(
"C",
ProviderRegistry.Sql2008_ProviderManifest.GetStoreType(
TypeUsage.Create(PrimitiveType.GetEdmPrimitiveType(PrimitiveTypeKind.String))));
columnA.SetOrder(2);
table.AddColumn(columnA);
table.AddColumn(
new EdmProperty(
"Id",
ProviderRegistry.Sql2008_ProviderManifest.GetStoreType(
TypeUsage.Create(PrimitiveType.GetEdmPrimitiveType(PrimitiveTypeKind.String)))));
var database = new EdmModel(DataSpace.CSpace);
database.AddEntitySet("ES", table);
(new ColumnOrderingConvention()).Apply(table, new DbModel(null, database));
Assert.Equal(2, table.Properties.Count);
Assert.Equal("C", table.Properties.First().Name);
}
示例4: GenerateIndependentForeignKeyColumns
private IEnumerable<EdmProperty> GenerateIndependentForeignKeyColumns(
EntityType principalEntityType,
EntityType dependentEntityType,
AssociationSetMapping associationSetMapping,
EndPropertyMapping associationEndMapping,
EntityType dependentTable,
bool isPrimaryKeyColumn,
NavigationProperty principalNavigationProperty)
{
DebugCheck.NotNull(principalEntityType);
DebugCheck.NotNull(associationEndMapping);
DebugCheck.NotNull(dependentTable);
foreach (var property in principalEntityType.KeyProperties())
{
var columnName
= ((principalNavigationProperty != null)
? principalNavigationProperty.Name
: principalEntityType.Name) + "_" + property.Name;
var foreignKeyColumn
= MapTableColumn(property, columnName, false);
dependentTable.AddColumn(foreignKeyColumn);
if (isPrimaryKeyColumn)
{
dependentTable.AddKeyMember(foreignKeyColumn);
}
foreignKeyColumn.Nullable
= associationEndMapping.AssociationEnd.IsOptional()
|| (associationEndMapping.AssociationEnd.IsRequired()
&& dependentEntityType.BaseType != null);
foreignKeyColumn.StoreGeneratedPattern = StoreGeneratedPattern.None;
yield return foreignKeyColumn;
associationEndMapping.AddPropertyMapping(new ScalarPropertyMapping(property, foreignKeyColumn));
if (foreignKeyColumn.Nullable)
{
associationSetMapping
.AddCondition(new IsNullConditionMapping(foreignKeyColumn, false));
}
}
}
示例5: CreateIAMapping
private static AssociationSetMapping CreateIAMapping(EdmModel database, EntityType dependentTable)
{
var fkColumn = new EdmProperty(
"FK", ProviderRegistry.Sql2008_ProviderManifest.GetStoreType(
TypeUsage.Create(PrimitiveType.GetEdmPrimitiveType(PrimitiveTypeKind.String))));
dependentTable.AddColumn(fkColumn);
var foreignKeyConstraint = new ForeignKeyBuilder(database, "FK")
{
PrincipalTable = database.AddTable("P")
};
dependentTable.AddForeignKey(foreignKeyConstraint);
foreignKeyConstraint.DependentColumns = new[] { fkColumn };
var associationSetMapping
= new AssociationSetMapping(
new AssociationSet("AS", new AssociationType("A", XmlConstants.ModelNamespace_3, false, DataSpace.CSpace)),
database.GetEntitySet(dependentTable)).Initialize();
associationSetMapping.SourceEndMapping.AddPropertyMapping(new ScalarPropertyMapping(new EdmProperty("PK"), fkColumn));
return associationSetMapping;
}