本文整理汇总了C#中EntityType.RemoveNavigation方法的典型用法代码示例。如果您正苦于以下问题:C# EntityType.RemoveNavigation方法的具体用法?C# EntityType.RemoveNavigation怎么用?C# EntityType.RemoveNavigation使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EntityType
的用法示例。
在下文中一共展示了EntityType.RemoveNavigation方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Can_add_and_remove_navigations
public void Can_add_and_remove_navigations()
{
var customerType = new EntityType(typeof(Customer), new Model());
var customerKey = customerType.GetOrAddKey(customerType.GetOrAddProperty(Customer.IdProperty));
var orderType = new EntityType(typeof(Order), new Model());
var foreignKeyProperty = orderType.GetOrAddProperty(Order.CustomerIdProperty);
var customerForeignKey = orderType.GetOrAddForeignKey(foreignKeyProperty, customerKey);
Assert.Null(orderType.RemoveNavigation(new Navigation("Customer", customerForeignKey, pointsToPrincipal: true)));
var customerNavigation = orderType.AddNavigation("Customer", customerForeignKey, pointsToPrincipal: true);
var ordersNavigation = customerType.AddNavigation("Orders", customerForeignKey, pointsToPrincipal: false);
Assert.Equal("Customer", customerNavigation.Name);
Assert.Same(orderType, customerNavigation.EntityType);
Assert.Same(customerForeignKey, customerNavigation.ForeignKey);
Assert.True(customerNavigation.PointsToPrincipal);
Assert.False(customerNavigation.IsCollection());
Assert.Same(customerType, customerNavigation.GetTargetType());
Assert.Same(customerNavigation, customerForeignKey.GetNavigationToPrincipal());
Assert.Equal("Orders", ordersNavigation.Name);
Assert.Same(customerType, ordersNavigation.EntityType);
Assert.Same(customerForeignKey, ordersNavigation.ForeignKey);
Assert.False(ordersNavigation.PointsToPrincipal);
Assert.True(ordersNavigation.IsCollection());
Assert.Same(orderType, ordersNavigation.GetTargetType());
Assert.Same(ordersNavigation, customerForeignKey.GetNavigationToDependent());
Assert.Same(customerNavigation, orderType.Navigations.Single());
Assert.Same(ordersNavigation, customerType.Navigations.Single());
Assert.Same(customerNavigation, orderType.RemoveNavigation(customerNavigation));
Assert.Null(orderType.RemoveNavigation(customerNavigation));
Assert.Empty(orderType.Navigations);
Assert.Same(ordersNavigation, customerType.RemoveNavigation(new Navigation("Orders", customerForeignKey, pointsToPrincipal: false)));
Assert.Empty(customerType.Navigations);
}
示例2: Navigation_back_pointer_is_fixed_up_as_navigation_is_added_and_removed
public void Navigation_back_pointer_is_fixed_up_as_navigation_is_added_and_removed()
{
var entityType1 = new EntityType(typeof(Customer));
entityType1.SetKey(entityType1.AddProperty(Customer.IdProperty));
var entityType2 = new EntityType(typeof(Customer));
var navigation
= new Navigation(
new ForeignKey(
entityType1.GetKey(),
new[] { entityType1.AddProperty(Customer.IdProperty) }), "Nav", pointsToPrincipal: true);
entityType1.AddNavigation(navigation);
Assert.Same(entityType1, navigation.EntityType);
entityType2.AddNavigation(navigation);
Assert.Same(entityType2, navigation.EntityType);
Assert.Empty(entityType1.Navigations);
entityType2.RemoveNavigation(navigation);
Assert.Empty(entityType2.Navigations);
Assert.Null(navigation.EntityType);
}