PDA

View Full Version : سوال: درج مجموعه ای از اطلاعات



araz_pashazadeh
دوشنبه 10 مرداد 1390, 17:37 عصر
با عرض سلام و خسته نباشید خدمت دوستان.
من در قسمتی از برنامه مجموعه ای از اطلاعات را در دیتا بیس درج می کنم که این مجموعه از اطلاعات در دو تا جدول متفاوت می باشد من می خوام اطلاعات به صورت یک پارچه در دیتا بیس درج شود و برای این کار از تراکنش های #C استفاده می کنم.
آیا روشی وجود داره که من این مجوعه اطلاعات را به صورت یکجا درج کنم؟
کدی که من نوشتم به صورت زیر می باشد ممنون میشم اگه دوستان در مورد کدی که من نوشتم نظر بدن و در صورت مشکل راه حلی را پیشنهاد بدن.

SqlTransaction Transaction;
SqlConnection Connection = newSqlConnection(ConnectionString);
SqlCommand Comm = Connection.CreateCommand();
Connection.Open();
// Start a local transaction.
Transaction = Connection.BeginTransaction();
// Must assign both transaction object and connection
// to Command object for a pending local transaction
Comm.Connection = Connection;
Comm.Transaction = Transaction;
try
{
Comm.CommandText = "[AddNewInvoiceBuy]";
Comm.CommandType = CommandType.StoredProcedure;
Comm.Parameters.AddWithValue("@DateInvoice", DateInvoice);
Comm.Parameters.AddWithValue("@DateRegister", DateRegister);
Comm.Parameters.AddWithValue("@NumberInvoice", NumberInvoice);
Comm.Parameters.AddWithValue("@SellerId", SellerId);
Comm.Parameters.AddWithValue("@Description", Description);
Comm.ExecuteNonQuery();
Comm.Parameters.Clear();
Comm.CommandText = "[AddNewInvoiceDescription]";

foreach (DataRow TempDR in InvoiceDescriptionBuyDataTable.Rows)
{
Comm.Parameters.AddWithValue("@ProductId", TempDR["ProductId"].ToString());
//Comm.Parameters.AddWithValue("@InvoiceId", TempDR["InvoiceId"].ToString());
Comm.Parameters.AddWithValue("@PriceBuy", TempDR["PriceBuy"].ToString());
Comm.Parameters.AddWithValue("@Count", TempDR["Count"].ToString());
Comm.ExecuteNonQuery();
Comm.Parameters.Clear();
}

// Attempt to commit the transaction.
Transaction.Commit();
return 1;
}
catch
{
Transaction.Rollback();
}
finally
{
Connection.Close();
}
return 0;

araz_pashazadeh
چهارشنبه 12 مرداد 1390, 19:34 عصر
کسی نمی خواد من را در این زمینه راهنمایی کنه؟