2011-05-07 140 views
0

我正在使用helpDesk Web应用程序。Web应用程序中的同步

我生成从一个功能 这些功能的独特complaint_id可以通过3个用户在时间,普通用户,超级用户和管理员当任何用户点击新的投诉,我在插入一个空白行

被称为投诉表并将该唯一的complaint_id返回给调用者。

但它可能发生,所有的3个用户有调用函数在他同一时间,因此艾米事业问题产生的投诉ID

因为这个功能可以共享,有可能是问题产生的ID。 我只知道它可以解决使用的线程,但我怎么不知道 我对线程

的获取ID功能为普通功能 这个函数调用存储过程知之甚少。

将它创建问题,如果所有3种类型的用户拨打同一时间 这里的功能是代码

public string Getid(AddComplaint_DAO p) 
    { 
     SqlConnection con = null; 
     SqlCommand cmd; 
     string strConnection; 
     SqlDataAdapter adpt = null; 

     try 
     { 
      strConnection = ConfigurationManager.AppSettings["Connetionstring2"]; 
      con = new SqlConnection(strConnection); 
      cmd = new SqlCommand("GetId", con); 
      cmd.Parameters.AddWithValue("@s_CompDate", SqlDateTime.Null); 
      cmd.Parameters.AddWithValue("@s_UserId", p.Ename); 
      cmd.Parameters.AddWithValue("@s_LocationId", SqlString.Null); 
      cmd.Parameters.AddWithValue("@s_DeptId", SqlString.Null); 
      cmd.Parameters.AddWithValue("@i_Extension", SqlInt32.Null); 
      cmd.Parameters.AddWithValue("@s_MainCat", SqlString.Null); 
      cmd.Parameters.AddWithValue("@s_SubCat", SqlString.Null); 
      cmd.Parameters.AddWithValue("@s_Item", SqlString.Null); 
      cmd.Parameters.AddWithValue("@s_Subject", SqlString.Null); 
      cmd.Parameters.AddWithValue("@s_Description", SqlString.Null); 


      cmd.CommandType = CommandType.StoredProcedure; 
      adpt = new SqlDataAdapter(cmd); 
      DataSet ds = new DataSet(); 
      adpt.Fill(ds); 
      if (ds != null) 
      { 
       if (ds.Tables[0].Rows.Count > 0) 
       { 
        string val = ds.Tables[0].Rows[0][0].ToString(); 
        return val; 
       } 
      } 

     } 
     catch (SqlException ex) 
     { 
      con.Close(); 
      string exep = ex.Message; 
      return null; 
     } 
     return null; 
    } 

我想这将是明确的,现在

+1

你说“有可能是问题产生的ID”,但没有透露具体细节。什么样的问题?你的问题不是很清楚。请阅读:http://tinyurl.com/so-hints – Oded 2011-05-07 05:22:38

+0

发布生成该ID的函数的代码。 – Oded 2011-05-07 05:37:04

+0

我不认为你需要担心,使用数据库geerated的自动键,它会自动关心并发问题。 – kobe 2011-05-07 05:54:08

回答

0

你绝对不用担心同步这里。你的数据库会为你做到这一点。我肯定。

感谢, 克里希纳

相关问题