mf_007
یک شنبه 24 فروردین 1393, 14:45 عصر
سلام
آیا نوشتن کد به صورت زیر صحیح است ؟ چه ایرادهایی داره ؟ آیا اگر برای هر تیبل یه همچنین کلاسی بنویسیم برنامه با تعداد یوزر بالا به مشکل می خوره ؟
کلاس کانکشن
public class connection
{
public connection()
{
//
// TODO: Add constructor logic here
//
}
public static string connectionstring()
{
return ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
}
}
کلاس تیبل یوزر
public class user:IDisposable
{
public user()
{
}
public int inserttouser(string name,string family,string codemeli,string shomareshenasname,string tell,string mobile,string userid,int reserv_number)
{
int result = 0;
using (SqlConnection conn = new SqlConnection(connection.connectionstring()))
{
try
{
using (SqlCommand cmdinsert = new SqlCommand())
{
cmdinsert.Connection = conn;
cmdinsert.CommandType = CommandType.StoredProcedure;
cmdinsert.CommandText = "sp_tbluser_profile_Insert";
cmdinsert.Parameters.AddWithValue("@name",name);
cmdinsert.Parameters.AddWithValue("@family",family);
cmdinsert.Parameters.AddWithValue("@code_meli",codemeli);
cmdinsert.Parameters.AddWithValue("@shomareshenasname",shomareshenasname);
cmdinsert.Parameters.AddWithValue("@tell",tell);
cmdinsert.Parameters.AddWithValue("@mobile",mobile);
cmdinsert.Parameters.AddWithValue("@user_id",userid);
cmdinsert.Parameters.AddWithValue("@reserv_number",reserv_number);
conn.Open();
result = cmdinsert.ExecuteNonQuery();
conn.Close();
}
}
catch { }
finally { conn.Close(); }
}
return result;
}
public DataTable selectuser(string userid)
{
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(connection.connectionstring()))
{
try
{
using (SqlCommand cmdselect = new SqlCommand())
{
cmdselect.CommandType = CommandType.StoredProcedure;
cmdselect.Connection = conn;
cmdselect.CommandText = "sp_tbluser_profile_SelectRow";
cmdselect.Parameters.AddWithValue("@user_id",userid);
conn.Open();
cmdselect.ExecuteNonQuery();
conn.Close();
SqlDataAdapter da = new SqlDataAdapter(cmdselect);
da.Fill(dt);
da.Dispose();
}
}
catch { }
finally { conn.Close(); }
}
return dt;
}
public int updateuser(string name, string family, string codemeli, string shomareshenasname, string tell, string mobile, string userid, int reserv_number)
{
int result = 0;
using (SqlConnection conn = new SqlConnection(connection.connectionstring()))
{
try
{
using (SqlCommand cmdinsert = new SqlCommand())
{
cmdinsert.Connection = conn;
cmdinsert.CommandType = CommandType.StoredProcedure;
cmdinsert.CommandText = "sp_tbluser_profile_Update";
cmdinsert.Parameters.AddWithValue("@name", name);
cmdinsert.Parameters.AddWithValue("@family", family);
cmdinsert.Parameters.AddWithValue("@code_meli", codemeli);
cmdinsert.Parameters.AddWithValue("@shomareshenasname", shomareshenasname);
cmdinsert.Parameters.AddWithValue("@tell", tell);
cmdinsert.Parameters.AddWithValue("@mobile", mobile);
cmdinsert.Parameters.AddWithValue("@user_id", userid);
cmdinsert.Parameters.AddWithValue("@reserv_number", reserv_number);
conn.Open();
result = cmdinsert.ExecuteNonQuery();
conn.Close();
}
}
catch { }
finally { conn.Close(); }
}
return result;
}
bool disposed;
protected virtual void Dispose(bool disposing)
{
if (!disposed)
{
if (disposing)
{
//dispose managed ressources
}
}
//dispose unmanaged ressources
disposed = true;
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
}
آیا نوشتن کد به صورت زیر صحیح است ؟ چه ایرادهایی داره ؟ آیا اگر برای هر تیبل یه همچنین کلاسی بنویسیم برنامه با تعداد یوزر بالا به مشکل می خوره ؟
کلاس کانکشن
public class connection
{
public connection()
{
//
// TODO: Add constructor logic here
//
}
public static string connectionstring()
{
return ConfigurationManager.ConnectionStrings["conn"].ConnectionString;
}
}
کلاس تیبل یوزر
public class user:IDisposable
{
public user()
{
}
public int inserttouser(string name,string family,string codemeli,string shomareshenasname,string tell,string mobile,string userid,int reserv_number)
{
int result = 0;
using (SqlConnection conn = new SqlConnection(connection.connectionstring()))
{
try
{
using (SqlCommand cmdinsert = new SqlCommand())
{
cmdinsert.Connection = conn;
cmdinsert.CommandType = CommandType.StoredProcedure;
cmdinsert.CommandText = "sp_tbluser_profile_Insert";
cmdinsert.Parameters.AddWithValue("@name",name);
cmdinsert.Parameters.AddWithValue("@family",family);
cmdinsert.Parameters.AddWithValue("@code_meli",codemeli);
cmdinsert.Parameters.AddWithValue("@shomareshenasname",shomareshenasname);
cmdinsert.Parameters.AddWithValue("@tell",tell);
cmdinsert.Parameters.AddWithValue("@mobile",mobile);
cmdinsert.Parameters.AddWithValue("@user_id",userid);
cmdinsert.Parameters.AddWithValue("@reserv_number",reserv_number);
conn.Open();
result = cmdinsert.ExecuteNonQuery();
conn.Close();
}
}
catch { }
finally { conn.Close(); }
}
return result;
}
public DataTable selectuser(string userid)
{
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection(connection.connectionstring()))
{
try
{
using (SqlCommand cmdselect = new SqlCommand())
{
cmdselect.CommandType = CommandType.StoredProcedure;
cmdselect.Connection = conn;
cmdselect.CommandText = "sp_tbluser_profile_SelectRow";
cmdselect.Parameters.AddWithValue("@user_id",userid);
conn.Open();
cmdselect.ExecuteNonQuery();
conn.Close();
SqlDataAdapter da = new SqlDataAdapter(cmdselect);
da.Fill(dt);
da.Dispose();
}
}
catch { }
finally { conn.Close(); }
}
return dt;
}
public int updateuser(string name, string family, string codemeli, string shomareshenasname, string tell, string mobile, string userid, int reserv_number)
{
int result = 0;
using (SqlConnection conn = new SqlConnection(connection.connectionstring()))
{
try
{
using (SqlCommand cmdinsert = new SqlCommand())
{
cmdinsert.Connection = conn;
cmdinsert.CommandType = CommandType.StoredProcedure;
cmdinsert.CommandText = "sp_tbluser_profile_Update";
cmdinsert.Parameters.AddWithValue("@name", name);
cmdinsert.Parameters.AddWithValue("@family", family);
cmdinsert.Parameters.AddWithValue("@code_meli", codemeli);
cmdinsert.Parameters.AddWithValue("@shomareshenasname", shomareshenasname);
cmdinsert.Parameters.AddWithValue("@tell", tell);
cmdinsert.Parameters.AddWithValue("@mobile", mobile);
cmdinsert.Parameters.AddWithValue("@user_id", userid);
cmdinsert.Parameters.AddWithValue("@reserv_number", reserv_number);
conn.Open();
result = cmdinsert.ExecuteNonQuery();
conn.Close();
}
}
catch { }
finally { conn.Close(); }
}
return result;
}
bool disposed;
protected virtual void Dispose(bool disposing)
{
if (!disposed)
{
if (disposing)
{
//dispose managed ressources
}
}
//dispose unmanaged ressources
disposed = true;
}
public void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
}