File: WorkflowOwnershipException.cs
Project: ndp\cdf\src\WF\RunTime\System.Workflow.Runtime.csproj (System.Workflow.Runtime)
using System;
using System.Globalization;
using System.Workflow.ComponentModel;
using System.Collections.Generic;
using System.Text;
using System.Runtime.Serialization;
using System.Security.Permissions;
using System.Xml;
using System.Xml.Schema;
    
namespace System.Workflow.Runtime
{
    #region State Persistence Exceptions
 
    [Serializable]
    [Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
    public class WorkflowOwnershipException : Exception
    {
        private Guid _instanceId;
        public Guid InstanceId
        {
            get
            {
                return _instanceId;
            }
            set
            {
                _instanceId = value;
            }
        }
        public WorkflowOwnershipException()
            : base(ExecutionStringManager.WorkflowOwnershipException)
        { }
 
        public WorkflowOwnershipException(string message)
            : base(message)
        { }
 
        public WorkflowOwnershipException(string message, Exception innerException)
            : base(message, innerException)
        { }
 
        public WorkflowOwnershipException(Guid instanceId)
            : base(ExecutionStringManager.WorkflowOwnershipException)
        {
            this.InstanceId = instanceId;
        }
 
        public WorkflowOwnershipException(Guid instanceId, string message)
            : base(message)
        {
            this.InstanceId = instanceId;
        }
 
        public WorkflowOwnershipException(Guid instanceId, string message, Exception innerException)
            : base(message, innerException)
        {
            this.InstanceId = instanceId;
        }
 
        [SecurityPermissionAttribute(SecurityAction.Demand, SerializationFormatter = true)]
        protected WorkflowOwnershipException(SerializationInfo info, StreamingContext context)
            : base(info, context)
        {
            _instanceId = (Guid)info.GetValue("__instanceId__", typeof(Guid));
        }
 
        //ISerializable override to store custom state
        [SecurityPermissionAttribute(SecurityAction.Demand, SerializationFormatter = true)]
        public override void GetObjectData(SerializationInfo info, StreamingContext context)
        {
            if (null == info)
                throw new ArgumentNullException("info");
 
            base.GetObjectData(info, context);
            info.AddValue("__instanceId__", _instanceId);
        }
 
    }
 
    #endregion
}