動作しません、私は地方議会 するvar xamlInjector =新XamlInjector(「CreditAtRenewalFlow.xaml」、typeofのようCTORにカスタマイズされたアクティビティのアセンブリを通過しました(CreateFollowUp).Assembly);ソリューションは、ユニットテストでは
CreateFollowUpが
AsynCodeActivityである私は、エラー「要素 '解析ルールで ' '予期しない' PROPERTYELEMENT :: = EmptyElementました|。。(にStartElement ElementBody)を'。'行番号「2」および行位置「4」。次の行の実行時に
var host = WorkflowInvokerTest.Create(xamlInjector.GetActivity());
ユニットテストのサンプルである[のtestMethod] [DeploymentItem(@ "\ ProcessFlows Activity1.xaml \ SRC")] 公共ボイドActivity1Test(){
var xamlInjector = new XamlInjector("Activity1.xaml", typeof(CreateFollowUp).Assembly); xamlInjector.ReplaceAll(typeof(CreateFollowUp), typeof (MockCreateFollowUp)); var mockExternalServiceManager = new Mock<IExternalServices>(); mockExternalServiceManager.Setup(x => x.CreateFollowUp()).Verifiable(); var host = WorkflowInvokerTest.Create(xamlInjector.GetActivity()); dynamic parameterValues1 = new WorkflowArguments(); parameterValues1.value1 = mockExternalServiceManager.Object; IDictionary<string, object> dictionary = host.TestActivity(); }
そしてCreateFollowUpは以下の通りです
公開密封クラスCreateFollowUp:AsyncCodeActivity {
[必須項目] public InArgument ExternalServices {get;セット; }protected override IAsyncResult BeginExecute(AsyncCodeActivityContext context, AsyncCallback callback,
オブジェクト状態) {アクションcreateFollowUp = this.ExternalServices.Get(コンテキスト).CreateFollowUp。 context.UserState = createFollowUp; return createFollowUp.BeginInvoke(コールバック、状態); }
protected override void EndExecute(AsyncCodeActivityContext context, IAsyncResult result) { var createFollowUp = context.UserState as Action; if (createFollowUp == null) { throw new ArgumentNullException("The AsyncState of the IAsyncResult was not of the type
ExternalServices.AsyncCreateFollowUp」、(例外)NULL);}
createFollowUp.EndInvoke(result); } }
興味深い...それ以前は見たことがありません。 XAMLを私に送ってもらえますか? –
私のコードをもう一度書き直した後、私はWorkflowArgumentsが問題を起こしていることに気付きました。ですから、私は入力オブジェクトを辞書オブジェクトとして変更したとき、うまくいきました。 – userpb
あなたの場合、どのように修正しましたか?なぜあなたは入力argを辞書オブジェクトに変更する必要がありますか?私はここで同じ問題があり、何が間違っているのか分かりません。 –