public static void createWithSimpleEntityMaximum(Resources context,
                                                         string filePath,
                                                         TestType testType,
                                                         TestWorkload testWorkload,
                                                         string DataAreaId,
                                                         string customerAccount)
        {
            Stopwatch sw = new Stopwatch();

            sw.Start();

            DataServiceCollection <SalesOrderHeaderV2EntityOnlySalesTable> SalesOrderCollection = new DataServiceCollection <SalesOrderHeaderV2EntityOnlySalesTable>(context);
            SalesOrderHeaderV2EntityOnlySalesTable SalesOrderHeaderV2EntityOnlySalesTable       = new SalesOrderHeaderV2EntityOnlySalesTable();


            SalesOrderCollection.Add(SalesOrderHeaderV2EntityOnlySalesTable);

            // Required Fields
            SalesOrderHeaderV2EntityOnlySalesTable.OrderingCustomerAccountNumber = customerAccount;
            SalesOrderHeaderV2EntityOnlySalesTable.InvoiceCustomerAccountNumber  = customerAccount;
            SalesOrderHeaderV2EntityOnlySalesTable.dataAreaId   = DataAreaId;
            SalesOrderHeaderV2EntityOnlySalesTable.CurrencyCode = "USD";
            SalesOrderHeaderV2EntityOnlySalesTable.LanguageId   = "en-us";

            //SalesOrderHeaderV2EntityOnlySalesTable.CustGroup = "30";
            //SalesOrderHeaderV2EntityOnlySalesTable.ShippingDateRequested = DateTime.UtcNow;

            // Optional Fields
            SalesOrderHeaderV2EntityOnlySalesTable.SalesOrderPromisingMethod = SalesDeliveryDateControlType.CTP;
            SalesOrderHeaderV2EntityOnlySalesTable.DeliveryModeCode          = "10";
            SalesOrderHeaderV2EntityOnlySalesTable.DeliveryTermsCode         = "FOB";
            SalesOrderHeaderV2EntityOnlySalesTable.PaymentTermsName          = "Net10";
            SalesOrderHeaderV2EntityOnlySalesTable.CustomerPaymentMethodName = "Check";
            SalesOrderHeaderV2EntityOnlySalesTable.Email = "*****@*****.**";
            SalesOrderHeaderV2EntityOnlySalesTable.CustomerPostingProfileId = "GEN";
            SalesOrderHeaderV2EntityOnlySalesTable.SalesOrderName           = "Test Sales Order Id";
            SalesOrderHeaderV2EntityOnlySalesTable.SalesOrderOriginCode     = "PHONE";
            SalesOrderHeaderV2EntityOnlySalesTable.SalesOrderPoolId         = "03";
            SalesOrderHeaderV2EntityOnlySalesTable.SalesTaxGroupCode        = "CA";
            SalesOrderHeaderV2EntityOnlySalesTable.TaxExemptNumber          = "35-12345";


            context.SaveChanges(SaveChangesOptions.PostOnlySetProperties | SaveChangesOptions.BatchWithSingleChangeset);

            sw.Stop();

            Console.WriteLine("Created Sales Order " + SalesOrderHeaderV2EntityOnlySalesTable.SalesOrderNumber);

            StreamWriter stream = File.AppendText(filePath);

            stream.WriteLine(Entity + "," + testType + "," + testWorkload + "," + sw.Elapsed.TotalMilliseconds.ToString());

            stream.Flush();
            stream.Close();
        }
        public static void createAndDeleteWithSimpleEntity(Resources context,
                                                           string filePath,
                                                           TestType testType,
                                                           TestWorkload testWorkload,
                                                           string DataAreaId,
                                                           string customerAccount)
        {
            Stopwatch sw = new Stopwatch();
            string    SalesOrderNumber;

            Entity = "SalesOrderHeadersV2EntityOnlySalesTable";

            DataServiceCollection <SalesOrderHeaderV2EntityOnlySalesTable> SalesOrderCollection = new DataServiceCollection <SalesOrderHeaderV2EntityOnlySalesTable>(context);

            SalesOrderHeaderV2EntityOnlySalesTable SalesOrderHeaderV2EntityOnlySalesTable = new SalesOrderHeaderV2EntityOnlySalesTable();

            SalesOrderCollection.Add(SalesOrderHeaderV2EntityOnlySalesTable);

            //Required Fields
            SalesOrderHeaderV2EntityOnlySalesTable.OrderingCustomerAccountNumber = customerAccount;
            SalesOrderHeaderV2EntityOnlySalesTable.InvoiceCustomerAccountNumber  = customerAccount;
            SalesOrderHeaderV2EntityOnlySalesTable.dataAreaId   = DataAreaId;
            SalesOrderHeaderV2EntityOnlySalesTable.CurrencyCode = "USD";
            SalesOrderHeaderV2EntityOnlySalesTable.LanguageId   = "en-us";

            context.SaveChanges(SaveChangesOptions.PostOnlySetProperties | SaveChangesOptions.BatchWithSingleChangeset);
            SalesOrderNumber = SalesOrderHeaderV2EntityOnlySalesTable.SalesOrderNumber;
            SalesOrderHeaderV2EntityOnlySalesTable = null;

            context.SalesOrderHeadersV2EntityOnlySalesTable.FirstOrDefault();

            sw.Start();

            var SalesOrderHeadersV2EntityOnlySalesTable = context.SalesOrderHeadersV2EntityOnlySalesTable.Where(x => x.SalesOrderNumber == SalesOrderNumber && x.dataAreaId == DataAreaId).First();


            context.DeleteObject(SalesOrderHeadersV2EntityOnlySalesTable);
            context.SaveChanges(SaveChangesOptions.PostOnlySetProperties | SaveChangesOptions.BatchWithSingleChangeset);

            sw.Stop();

            Console.WriteLine("Created and Deleted Sales Order " + SalesOrderNumber);

            StreamWriter stream = File.AppendText(filePath);

            stream.WriteLine(Entity + "," + testType + "," + testWorkload + "," + sw.Elapsed.TotalMilliseconds.ToString());

            stream.Flush();
            stream.Close();
        }
        public static void runOneRead(Resources context, string filePath, TestType testType, TestWorkload testWorkload, string SalesOrderNumber, string DataAreaId)
        {
            Stopwatch sw = new Stopwatch();

            sw.Start();

            SalesOrderHeaderV2EntityOnlySalesTable SalesOrderHeaderV2EntityOnlySalesTable = context.SalesOrderHeadersV2EntityOnlySalesTable.Where(x => x.SalesOrderNumber == SalesOrderNumber && x.dataAreaId == DataAreaId).First();

            sw.Stop();

            StreamWriter stream = File.AppendText(filePath);

            stream.WriteLine("SalesOrderHeaderV2EntityOnlySalesTable," + testType + "," + testWorkload + "," + sw.Elapsed.TotalMilliseconds.ToString());
            stream.Flush();
            stream.Close();
        }
        public static void runOneRead(Resources context, string filePath, TestType testType, TestWorkload testWorkload, string SalesOrderNumber, string DataAreaId)
        {
            int       tryCount = 0;
            Stopwatch sw       = new Stopwatch();

            sw.Start();

            while (true)
            {
                try
                {
                    tryCount++;
                    SalesOrderHeaderV2EntityOnlySalesTable SalesOrderHeaderV2EntityOnlySalesTable = context.SalesOrderHeadersV2EntityOnlySalesTable.Where(x => x.SalesOrderNumber == SalesOrderNumber && x.dataAreaId == DataAreaId).First();


                    break;
                }
                catch (Exception e)
                {
                    if (tryCount >= 3)
                    {
                        throw (e);
                    }
                    sw.Reset();
                    sw.Start();
                }
            }

            sw.Stop();

            StreamWriter stream = File.AppendText(filePath);

            stream.WriteLine(Entity + "," + testType + "," + testWorkload + "," + sw.Elapsed.TotalMilliseconds.ToString());
            stream.Flush();
            stream.Close();
        }