コード例 #1
0
        protected virtual ICrmOperationResult Execute(ICrmOperation orgCommand)
        {
            ICrmOperationResult result = orgCommand.Execute();

            if (result == null)
            {
                throw new NotSupportedException("Sorry, was not able to translate the command into the appropriate CRM SDK Organization Request message.");
            }

            return(result);
        }
コード例 #2
0
 public void NextOperationResult()
 {
     if (!HasMoreResults)
     {
         throw new InvalidOperationException("There are no more result.");
     }
     else
     {
         CurrentResultIndex = CurrentResultIndex + 1;
         var crmOperation = OperationResults[CurrentResultIndex];
         _CurrentOperationResult = crmOperation.Execute();
     }
 }
コード例 #3
0
        public int ExecuteNonQueryOperation(ICrmOperation command)
        {
            // You can use ExecuteNonQuery to perform catalog operations (for example, querying the structure of a database or creating database objects such as tables), or to change the data in a database by executing UPDATE, INSERT, or DELETE statements.
            // Although ExecuteNonQuery does not return any rows, any output parameters or return values mapped to parameters are populated with data.
            // For UPDATE, INSERT, and DELETE statements, the return value is the number of rows affected by the command. For all other types of statements, the return value is -1.
            GuardOrgCommand(command);

            ICrmOperationResult result = command.Execute();

            if (result == null)
            {
                throw new NotSupportedException("Sorry, was not able to translate the command into the appropriate CRM SDK Organization Request message.");
            }

            return(result.ReturnValue);
        }
コード例 #4
0
        public ICrmOperationResult ExecuteOperation(ICrmOperation command)
        {
            GuardOrgCommand(command);

            ICrmOperationResult result = null;

            // if ((behavior & CommandBehavior.KeyInfo) > 0)
            switch (command.DbCommand.CommandType)
            {
            case CommandType.Text:
            case CommandType.TableDirect:
                result = Execute(command);
                break;

            case CommandType.StoredProcedure:
                result = ExecuteStoredProcedureOperation(command);
                break;
            }

            return(result);
        }
コード例 #5
0
ファイル: CrmDbDataReader.cs プロジェクト: noriy0363/CrmAdo
        public CrmDbDataReader(ICrmOperationResult result, DbConnection dbConnection, ISchemaTableProvider schemaTableProvider)
        {
            // TODO: Complete member initialization
            if (result == null)
            {
                throw new ArgumentNullException("result");
            }
            if (result.ResultSet == null)
            {
                throw new ArgumentNullException("resultset");
            }

            if (schemaTableProvider == null)
            {
                throw new ArgumentNullException("schemaTableProvider");
            }

            this._Result = result;
            this._SchemaTableProvider = schemaTableProvider;
            this._DbConnection        = dbConnection; // optional.

            _IsOpen = true;
        }
コード例 #6
0
 public void NextOperationResult()
 {
     if (!HasMoreResults)
     {
         throw new InvalidOperationException("There are no more result.");
     }
     else
     {
         CurrentResultIndex = CurrentResultIndex + 1;
         var crmOperation = OperationResults[CurrentResultIndex];
         _CurrentOperationResult = crmOperation.Execute();
     }
 }
コード例 #7
0
ファイル: CrmDbDataReader.cs プロジェクト: noriy0363/CrmAdo
 public CrmDbDataReader(ICrmOperationResult result, DbConnection dbConnection)
     : this(result, dbConnection, new SchemaTableProvider())
 {
 }
コード例 #8
0
ファイル: CrmDbDataReader.cs プロジェクト: noriy0363/CrmAdo
 public CrmDbDataReader(ICrmOperationResult results)
     : this(results, null)
 {
 }