本文整理汇总了C#中AsyncOperation.SetResult方法的典型用法代码示例。如果您正苦于以下问题:C# AsyncOperation.SetResult方法的具体用法?C# AsyncOperation.SetResult怎么用?C# AsyncOperation.SetResult使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AsyncOperation
的用法示例。
在下文中一共展示了AsyncOperation.SetResult方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ContinueWithActionInterfaceTest
public void ContinueWithActionInterfaceTest()
{
var operation = new AsyncOperation<bool>();
IOperationResult<bool> operationResult = OperationResult.CreateResult(OperationType.PageNavigation, this, true,
DataContext.Empty);
bool isInvoked = false;
var continuationAction = new ActionContinuationMock
{
Invoke = result =>
{
result.ShouldEqual(operationResult);
isInvoked = true;
}
};
operation.ContinueWith(continuationAction);
isInvoked.ShouldBeFalse();
operation.SetResult(operationResult);
isInvoked.ShouldBeTrue();
isInvoked = false;
operation.ContinueWith(continuationAction);
isInvoked.ShouldBeTrue();
}
示例2: ResultTest
public void ResultTest()
{
var operation = new AsyncOperation<bool>();
IOperationResult<bool> operationResult = OperationResult.CreateResult(OperationType.PageNavigation, this, true,
DataContext.Empty);
operation.SetResult(operationResult);
operation.Result.ShouldEqual(operationResult);
}
示例3: IsCompletedTest
public void IsCompletedTest()
{
var operation = new AsyncOperation<bool>();
operation.IsCompleted.ShouldBeFalse();
operation.SetResult(OperationResult.CreateResult(OperationType.PageNavigation, this, true,
DataContext.Empty));
operation.IsCompleted.ShouldBeTrue();
}
示例4: ContinueWithActionInterfaceContinuationTest
public void ContinueWithActionInterfaceContinuationTest()
{
var operation = new AsyncOperation<bool>();
IOperationResult<bool> operationResult = OperationResult
.CreateResult(OperationType.PageNavigation, this, true, DataContext.Empty);
var exception = new TestException();
var continuationAction = new ActionContinuationMock
{
Invoke = result =>
{
throw exception;
}
};
var continueWith = operation.ContinueWith(continuationAction);
continueWith.IsCompleted.ShouldBeFalse();
operation.SetResult(operationResult);
continueWith.IsCompleted.ShouldBeTrue();
continueWith.Result.IsFaulted.ShouldBeTrue();
continueWith.Result.Exception.ShouldEqual(exception);
}
示例5: OperationShouldUseDelegateToCreateMethodChain
public void OperationShouldUseDelegateToCreateMethodChain()
{
var operation = new AsyncOperation<bool>();
bool isFuncInvoked = false;
bool isFuncGenericInvoked = false;
bool isActionGenericInvoked = false;
bool isActionInvoked = false;
var func = new Func<IOperationResult, object>(op =>
{
isFuncInvoked = true;
return operation;
});
var funcGeneric = new Func<IOperationResult<object>, bool>(o =>
{
isFuncGenericInvoked = true;
o.Result.ShouldEqual(operation);
return true;
});
var actionGeneric = new Action<IOperationResult<bool>>(op =>
{
isActionGenericInvoked = true;
op.Result.ShouldBeTrue();
});
var action = new Action<IOperationResult>(op =>
{
isActionInvoked = true;
});
operation.ContinueWith(continuationFunction: func)
.ContinueWith(funcGeneric)
.ContinueWith(actionGeneric)
.ContinueWith(action);
operation.SetResult(OperationResult.CreateResult(OperationType.PageNavigation, this, true));
isFuncInvoked.ShouldBeTrue();
isFuncGenericInvoked.ShouldBeTrue();
isActionGenericInvoked.ShouldBeTrue();
isActionInvoked.ShouldBeTrue();
}
示例6: ContinueWithFunctionInterfaceGenericTest
public void ContinueWithFunctionInterfaceGenericTest()
{
var operation = new AsyncOperation<bool>();
IOperationResult<bool> operationResult = OperationResult.CreateResult(OperationType.PageNavigation, this, true,
DataContext.Empty);
var funcResult = new object();
var continuationFunction = new FunctionContinuationMock<bool, object>
{
Invoke = result =>
{
result.ShouldEqual(operationResult);
return funcResult;
}
};
var op = operation.ContinueWith(continuationFunction);
op.IsCompleted.ShouldBeFalse();
operation.SetResult(operationResult);
op.Result.Result.ShouldEqual(funcResult);
operation.ContinueWith(continuationFunction);
op.Result.Result.ShouldEqual(funcResult);
}