本文整理汇总了C#中EntityInstanceContext.GenerateActionLink方法的典型用法代码示例。如果您正苦于以下问题:C# EntityInstanceContext.GenerateActionLink方法的具体用法?C# EntityInstanceContext.GenerateActionLink怎么用?C# EntityInstanceContext.GenerateActionLink使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类EntityInstanceContext
的用法示例。
在下文中一共展示了EntityInstanceContext.GenerateActionLink方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: GenerateActionLink_ReturnsNull_ForContainment
public void GenerateActionLink_ReturnsNull_ForContainment()
{
// Arrange
HttpRequestMessage request = GetODataRequest(_model.Model);
var serializerContext = new ODataSerializerContext { Model = _model.Model, NavigationSource = _model.OrderLines, Url = request.GetUrlHelper() };
var entityContext = new EntityInstanceContext(serializerContext, _model.OrderLine.AsReference(), new { ID = 42 });
// Act
Uri link = entityContext.GenerateActionLink(_model.Tag);
// Assert
Assert.Null(link);
}
示例2: EdmSingleton
public void GenerateActionLink_GeneratesLinkWithDownCast_IfElementTypeDerivesFromBindingParameterType_ForSingleton()
{
// Arrange
IEdmSingleton me = new EdmSingleton(_model.Container, "Me", _model.SpecialCustomer);
HttpRequestMessage request = GetODataRequest(_model.Model);
var serializerContext = new ODataSerializerContext { Model = _model.Model, NavigationSource = me, Url = request.GetUrlHelper() };
var entityContext = new EntityInstanceContext(serializerContext, _model.SpecialCustomer.AsReference(), new { ID = 42 });
// Act
Uri link = entityContext.GenerateActionLink(_model.UpgradeCustomer);
// Assert
Assert.Equal("http://localhost/Me/NS.Customer/upgrade", link.AbsoluteUri);
}
示例3: GenerateActionLink_GeneratesLinkWithCast_IfEntitySetTypeDoesnotMatchActionEntityType_ForSingleton
public void GenerateActionLink_GeneratesLinkWithCast_IfEntitySetTypeDoesnotMatchActionEntityType_ForSingleton()
{
// Arrange
HttpRequestMessage request = GetODataRequest(_model.Model);
var serializerContext = new ODataSerializerContext { Model = _model.Model, NavigationSource = _model.Mary, Url = request.GetUrlHelper() };
var entityContext = new EntityInstanceContext(serializerContext, _model.SpecialCustomer.AsReference(), new { ID = 42 });
// Act
Uri link = entityContext.GenerateActionLink(_model.UpgradeSpecialCustomer);
// Assert
Assert.Equal("http://localhost/Mary/NS.SpecialCustomer/specialUpgrade", link.AbsoluteUri);
}
示例4: GenerateActionLink_GeneratesLinkWithoutCast_IfEntitySetTypeMatchesActionEntityType
public void GenerateActionLink_GeneratesLinkWithoutCast_IfEntitySetTypeMatchesActionEntityType()
{
// Arrange
HttpRequestMessage request = GetODataRequest(_model.Model);
var serializerContext = new ODataSerializerContext { Model = _model.Model, NavigationSource = _model.Customers, Url = request.GetUrlHelper() };
var entityContext = new EntityInstanceContext(serializerContext, _model.Customer.AsReference(), new { ID = 42 });
// Act
Uri link = entityContext.GenerateActionLink(_model.UpgradeCustomer);
Assert.Equal("http://localhost/Customers(42)/upgrade", link.AbsoluteUri);
}
示例5: GenerateActionLink_ThrowsActionNotBoundToEntity_IfActionHasNoParameters
public void GenerateActionLink_ThrowsActionNotBoundToEntity_IfActionHasNoParameters()
{
EntityInstanceContext entityContext = new EntityInstanceContext();
Mock<IEdmAction> action = new Mock<IEdmAction>();
action.Setup(a => a.Parameters).Returns(Enumerable.Empty<IEdmOperationParameter>());
action.Setup(a => a.Name).Returns("SomeAction");
Assert.ThrowsArgument(
() => entityContext.GenerateActionLink(action.Object),
"action",
"The action 'SomeAction' is not bound to an entity. Only actions that are bound to entities can have action links.");
}
示例6: GenerateActionLink_ThrowsArgumentNull_Action
public void GenerateActionLink_ThrowsArgumentNull_Action()
{
EntityInstanceContext entityContext = new EntityInstanceContext();
Assert.ThrowsArgumentNull(() => entityContext.GenerateActionLink(action: null), "action");
}