/// <summary> /// 保存Xml到数据库 /// </summary> /// <param name="processDesp"></param> /// <param name="xml"></param> protected override void SaveXml(IWfProcessDescriptor processDesp, XElement xml) { WfProcessDescriptorInfo info = WfProcessDescriptorInfo.FromProcessDescriptor(processDesp, xml); using (TransactionScope scope = TransactionScopeFactory.Create()) { WfProcessDescriptorInfoAdapter.Instance.Update(info); WfProcessDescriptorDimensionAdapter.Instance.Update(WfProcessDescriptorDimension.FromProcessDescriptor(processDesp)); scope.Complete(); } }
public static WfProcessDescriptorInfo FromProcessDescriptor(IWfProcessDescriptor processDesp, XElement xml) { processDesp.NullCheck("processDesp"); xml.NullCheck("xml"); WfProcessDescriptorInfo result = new WfProcessDescriptorInfo(); result.ProcessName = processDesp.Name; result.ApplicationName = processDesp.ApplicationName; result.ProgramName = processDesp.ProgramName; result.ProcessKey = processDesp.Key; result.Enabled = processDesp.Enabled; result.Data = xml.ToString(); return(result); }
/// <summary> /// 从数据库中加载Xml /// </summary> /// <param name="processKey"></param> /// <returns></returns> protected override XElement LoadXml(string processKey) { WfProcessDescriptorInfo info = WfProcessDescriptorInfoAdapter.Instance.Load(processKey); return(XElement.Parse(info.Data)); }