private static NullResponse DeleteCart(DeleteCartDataRequest request) { ThrowIf.Null(request, "request"); int errorCode; using (StringIdTableType transactionIdsTableType = new StringIdTableType(request.SalesTransactionIds, string.Empty)) { ParameterSet parameters = new ParameterSet(); parameters[SalesTransactionIdsTableTypeVariableName] = transactionIdsTableType; using (SqlServerDatabaseContext sqlServerDatabaseContext = new SqlServerDatabaseContext(request)) { errorCode = sqlServerDatabaseContext.ExecuteStoredProcedureNonQuery(DeleteSalesTransactionsSprocName, parameters); } } if (errorCode != (int)DatabaseErrorCodes.Success) { if (errorCode == (int)DatabaseErrorCodes.AuthorizationError) { throw new SecurityException(SecurityErrors.Microsoft_Dynamics_Commerce_Runtime_AuthorizationFailed, "One or more transactions could not be deleted."); } throw new StorageException(StorageErrors.Microsoft_Dynamics_Commerce_Runtime_CriticalStorageError, errorCode, "Unable to delete transactions."); } return(new NullResponse()); }
private static NullResponse DeleteCart(DeleteCartDataRequest request) { var deleteCartProcedure = new DeleteCartProcedure(request); deleteCartProcedure.Execute(); return(new NullResponse()); }
/// <summary> /// Performs the execution of the activity. /// </summary> /// <param name="context">The execution context under which the activity executes.</param> protected override void Execute(CodeActivityContext context) { if (context == null) { throw new ArgumentNullException("context"); } RequestContext requestContext = context.GetValue <RequestContext>(this.RequestContext); IEnumerable <string> transactionIds = context.GetValue <IEnumerable <string> >(this.TransactionIds); if (!transactionIds.Any()) { return; } DeleteCartDataRequest deleteCartDataRequest = new DeleteCartDataRequest(transactionIds); requestContext.Runtime.Execute <NullResponse>(deleteCartDataRequest, requestContext); }
/// <summary> /// Initializes a new instance of the <see cref="DeleteCartProcedure"/> class. /// </summary> /// <param name="request">The delete cart data request.</param> public DeleteCartProcedure(DeleteCartDataRequest request) { this.request = request; }