protected void DoTransferProgress(object sender, PostProgressDoPostedDataEventArgs e)
        {
            try
            {
                string ser = (string)e.Steps[0];

                DeserialObject obj = JSONSerializerExecute.Deserialize <DeserialObject>(ser);

                BatchExecutor executor = null;

                switch (obj.ActionType)
                {
                case TransferActionType.UserCopyToGroup:
                    executor = new CopyUsersToGroupsTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
                    break;

                case TransferActionType.UserCopyToOrg:
                    executor = new CopyUsersToOrgsTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
                    break;

                case TransferActionType.UserMoveToOrg:
                    executor = new MoveUsersToOrgsTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
                    break;

                case TransferActionType.GroupMoveToOrg:
                case TransferActionType.OrgTransfer:
                case TransferActionType.MixedToOrg:
                    executor = new MoveObjectsToOrgTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
                    break;

                default:
                    throw new InvalidOperationException("没有指定如何操作");
                }

                executor.Execute();
            }
            catch (Exception ex)
            {
                ProcessProgress.Current.Output.WriteLine(ex.ToString());
            }

            e.Result.CloseWindow = false;
            e.Result.ProcessLog  = ProcessProgress.Current.GetDefaultOutput();
        }
		protected void DoTransferProgress(object sender, PostProgressDoPostedDataEventArgs e)
		{
			try
			{
				string ser = (string)e.Steps[0];

				DeserialObject obj = JSONSerializerExecute.Deserialize<DeserialObject>(ser);

				BatchExecutor executor = null;

				switch (obj.ActionType)
				{
					case TransferActionType.UserCopyToGroup:
						executor = new CopyUsersToGroupsTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
						break;
					case TransferActionType.UserCopyToOrg:
						executor = new CopyUsersToOrgsTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
						break;
					case TransferActionType.UserMoveToOrg:
						executor = new MoveUsersToOrgsTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
						break;
					case TransferActionType.GroupMoveToOrg:
					case TransferActionType.OrgTransfer:
					case TransferActionType.MixedToOrg:
						executor = new MoveObjectsToOrgTransfer(obj.OrgKey, obj.SrcKeys, obj.TargetKeys);
						break;
					default:
						throw new InvalidOperationException("没有指定如何操作");
				}

				executor.Execute();
			}
			catch (Exception ex)
			{
				ProcessProgress.Current.Output.WriteLine(ex.ToString());
			}

			e.Result.CloseWindow = false;
			e.Result.ProcessLog = ProcessProgress.Current.GetDefaultOutput();
		}