/// <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();
            }
        }
示例#2
0
        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));
        }