本文整理汇总了C#中InternalModelBuilder.PrimaryKey方法的典型用法代码示例。如果您正苦于以下问题:C# InternalModelBuilder.PrimaryKey方法的具体用法?C# InternalModelBuilder.PrimaryKey怎么用?C# InternalModelBuilder.PrimaryKey使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类InternalModelBuilder
的用法示例。
在下文中一共展示了InternalModelBuilder.PrimaryKey方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: OnPrimaryKeySet_calls_apply_on_conventions_in_order
public void OnPrimaryKeySet_calls_apply_on_conventions_in_order()
{
var conventions = new ConventionSet();
InternalKeyBuilder internalKeyBuilder = null;
var convention = new Mock<IPrimaryKeyConvention>();
convention.Setup(c => c.Apply(It.IsAny<InternalKeyBuilder>(), It.IsAny<Key>()))
.Returns<InternalKeyBuilder, Key>((b, t) =>
{
Assert.NotNull(b);
Assert.Null(t);
internalKeyBuilder = b;
return true;
});
conventions.PrimaryKeySetConventions.Add(convention.Object);
var nullConvention = new Mock<IPrimaryKeyConvention>();
nullConvention.Setup(c => c.Apply(It.IsAny<InternalKeyBuilder>(), It.IsAny<Key>()))
.Returns<InternalKeyBuilder, Key>((b, t) =>
{
Assert.Null(t);
Assert.Same(internalKeyBuilder, b);
return false;
});
conventions.PrimaryKeySetConventions.Add(nullConvention.Object);
var extraConvention = new Mock<IPrimaryKeyConvention>();
extraConvention.Setup(c => c.Apply(It.IsAny<InternalKeyBuilder>(), It.IsAny<Key>()))
.Returns<InternalKeyBuilder, Key>((b, t) =>
{
Assert.False(true);
return false;
});
conventions.PrimaryKeySetConventions.Add(extraConvention.Object);
var entityBuilder = new InternalModelBuilder(new Model(), conventions)
.Entity(typeof(Order), ConfigurationSource.Convention);
entityBuilder.HasKey(new[] { "OrderId" }, ConfigurationSource.Convention);
Assert.NotNull(entityBuilder.PrimaryKey(new[] { "OrderId" }, ConfigurationSource.Convention));
Assert.NotNull(internalKeyBuilder);
}