Click here to Skip to main content
15,912,400 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hi Friends,

I userd TransactionScope class into C# code to save multiple records ,but some time some data saved and few not saved(saved partially).

How i can resolve this.

Thanks in advance

Shreeniwas Kushwah
Posted
Comments
Sandeep Mewara 5-Apr-13 4:51am    
How can someone comment/help without seeing what you have done?
SriNivas IT 5-Apr-13 4:53am    
Ok the code i pasted here


TransactionOptions options = new TransactionOptions();
options.Timeout = new TimeSpan(0, 10, 4);
options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted;
using (TransactionScope transactionScope = new TransactionScope(TransactionScopeOption.Required, options))
{
try
{
serviceDetail.ServiceRequestNumber = ServicerequestNo;
if (HttpContext.Current.Session[EnumSession.EntityID.ToString()] != "")
{
serviceDetail.EntityID = Convert.ToInt32(HttpContext.Current.Session[EnumSession.EntityID.ToString()]);
}
if (customerDetail.enableCustomerPanel == true)
{
dictParam = new Dictionary<string, parameteritem="">();
dictParam.Add("@FirstName", new ParameterItem(0, DbType.String, customerDetail.FirstName, ParameterDirection.Input));
dictParam.Add("@LastName", new ParameterItem(1, DbType.String, customerDetail.LastName, ParameterDirection.Input));
dictParam.Add("@Address", new ParameterItem(2, DbType.String, customerDetail.Address, ParameterDirection.Input));
dictParam.Add("@CityID", new ParameterItem(3, DbType.Int32, customerDetail.CityID, ParameterDirection.Input));
dictParam.Add("@PinCode", new ParameterItem(4, DbType.String, customerDetail.PinCode, ParameterDirection.Input));
dictParam.Add("@Mobile", new ParameterItem(5, DbType.String, customerDetail.Mobile, ParameterDirection.Input));
dictParam.Add("@Phone", new ParameterItem(6, DbType.String, customerDetail.Phone, ParameterDirection.Input));
dictParam.Add("@UserId", new ParameterItem(7, DbType.Int32, HttpContext.Current.Session[EnumSession.UserID.ToString()], ParameterDirection.Input));
this.Connection.AddParameters(dictParam);
customerDetail.CustomerID = Convert.ToInt32(this.Connection.ExecuteScalar(CommandType.StoredProcedure, Constants.USP_INSERT_CUSTOMER));
this.Connection.ClearParameters();
}
if (productDetail.enableProductPanel == true)
{
......

and also save data three more methods
SriNivas IT 5-Apr-13 5:07am    
Please help me to resolve this problem..!

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900