快速业务通道

使用silverlight构建一个工作流设计器(十七)-持久化数据到数据库

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-22
reidea.Web.UI.Contro.Workflow.Designer.ServicesClient.WorkFlowSoapClient(bind, endpoint);
wfClient.GetWorkFlowXMLCompleted += new EventHandler<Shareidea.Web.UI.Contro.Workflow.Designer.ServicesClient.GetWorkFlowXMLCompletedEventArgs>(wfClient_GetWorkFlowXMLCompleted);
wfClient.GetWorkFlowXMLAsync(WorkFlowUrlID);

}

在上面的代码中,WorkFlowUrlID是一个属性,如下所示:

public string WorkFlowUrlID
{
get
{
if (System.Windows.Browser.HtmlPage.Document.QueryString.ContainsKey("id"))
return System.Windows.Browser.HtmlPage.Document.QueryString["id"].ToString();
return "";
}
}

这表明,根据从url传递的id值从服务器获取工作流描述。一个常见的访问场景如下所示:

http://localhost/ ShareDesinger.aspx?id=1234567

更新xml描述到服务器

System.ServiceMode.BasicHttpBinding bind = new System.ServiceMode.BasicHttpBinding();
System.ServiceMode.EndpointAddress endpoint = new System.ServiceMode.EndpointAddress(
new Uri(System.Windows.Browser.HtmlPage.Document.DocumentUri, "services/workflow.asmx"), nul);

ServicesClient.WorkFlowSoapClient wfClient = new Shareidea.Web.UI.Contro.Workflow.Designer.ServicesClient.WorkFlowSoapClient(bind, endpoint);
wfClient.UpdateWorkFlowXMLCompleted += new EventHandler<System.ComponentMode.AsyncCompletedEventArgs>(wfClient_UpdateWorkFlowXMLCompleted);
wfClient.UpdateWorkFlowXMLAsync(ToXmlString());

其中使用到了更新方法的回调,方法如下:

void wfClient_UpdateWorkFlowXMLCompleted(object sender, System.ComponentMode.AsyncCompletedEventArgs e)
{
System.Windows.Browser.HtmlPage.Window.Alert(Text.Message_Saved);
}

需要注意的是,在这里并没有做异常的处理逻辑,留待以后添加吧。

本章内容就是这样了,下一张将完成整个持久化工作。敬请关注:)

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号