我正在研究WF,我正在制作书签。 当我写下以下内容时,我可以很好地放弃这项活动:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Activities;
using System.Activities.Validation;
using Microsoft.VisualBasic.Activities;
using System.Windows;
using System.Data;
using System.Linq;
using SimpleWebDesigner.ServiceReference1;
namespace SimpleWebDesigner.Bookmark_exmple
{
class newBookmark: NativeActivity
{
Service1Client ser = new Service1Client();
[RequiredArgument]
public OutArgument<bool> Out_arg { get; set; }//=new OutArgument<string>(output);// { get; set; }
protected override void Execute(NativeActivityContext context)
{
context.CreateBookmark("samename", new BookmarkCallback(OnBookmarkCallback));
}
protected override bool CanInduceIdle
{
get
{
return true;
}
}
void OnBookmarkCallback(NativeActivityContext context, Bookmark bookmark, object val)
{
bool approve;
approve = (bool)ser.get_from_WF(1);
Out_arg.Set(context, approve);
}
}
}
喜欢这个网页https://skydrive.live.com/?cid=F1FD3CCD21D87C68&id=F1FD3CCD21D87C68%21351&sc=documents
但是当我通过WCF从DB读取和写入时,如下面的代码:
class newBookmark: NativeActivity
{
Service1Client ser = new Service1Client();
[RequiredArgument]
public OutArgument<bool> Out_arg { get; set; }//=new OutArgument<string>(output);// { get; set; }
void OnBookmarkCallback(NativeActivityContext context, Bookmark bookmark, object val)
{
bool approve;
string exp;
approve = (bool)ser.get_from_WF(1);
if (approve == true)
exp = "momo";
else
exp = "yoyo";
Out_arg.Set(context, exp);
}
当我想删除此活动时它没有显示并弹出窗口,显示以下错误:调用目标抛出了异常
有任何帮助吗? 谢谢。
答案 0 :(得分:0)
鉴于您提供给我们的最少信息,我所能做的就是猜测该行
Service1Client ser = new Service1Client();
导致你的问题。首先,没有理由在设计时创建Service1Client。此外,它建议您不再需要时将其丢弃。
但是,由于您没有显示完整的活动,我无法真正说出构造函数或CacheMetadata()中的代码是错误的另一个原因。