PDA

View Full Version : مبتدی: جلوگیری از تکرار دستورات اس کیوال



saeedeh119
یک شنبه 08 بهمن 1391, 22:44 عصر
سلام من دارم یه برنامه می نویسم که حدودا ده تا فرم داره ودرهمه فرمها اطلاعاتی رو توی بانک درج حذف یا ویرایش می کنم.توی هر فرمی یه کانکشن وکتنکشن استرینگ میسازم وکوئری هر دکمه ای رو اجرا میکنم واین کاررو برای همه اعمال همه فرم ها تکرار میکنم.آیا این روش اصولیه؟اگه بخام یه کلاس داشته باشم که توابعش این کارارو انجام بدن ودر همه جا تکرار نشن چطور باید اونو بسازم؟

r_s1389@yahoo.com
یک شنبه 08 بهمن 1391, 23:52 عصر
سلام
شماه میتونید با استفاده یک کلاس مشکلتون رو حل کنید

saeedeh119
دوشنبه 09 بهمن 1391, 00:44 صبح
نمیدونم این کلاسو چطور بنویسم

r_s1389@yahoo.com
دوشنبه 09 بهمن 1391, 07:46 صبح
بفرما دوست عزیز


using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace library.DAL
{
class DBConnection
{
SqlConnection conect = new SqlConnection("Data Source=.;Initial Catalog=library;Integrated Security=True");
SqlDataAdapter da = new SqlDataAdapter();
DataTable dt = new DataTable();
public DataTable executeSelect(string sql)
{
conect.Open();
da.SelectCommand = new SqlCommand();
da.SelectCommand.Connection = conect;
da.SelectCommand.CommandText = sql;
da.Fill(dt);
conect.Close();

return dt;
}
public void executeInsert(string sql)
{
conect.Open();
da.InsertCommand = new SqlCommand();
da.InsertCommand.Connection = conect;
da.InsertCommand.CommandText = sql;
da.InsertCommand.ExecuteNonQuery();
conect.Close();
}
public void executedel(string sql)
{
conect.Open();
da.DeleteCommand = new SqlCommand();
da.DeleteCommand.Connection = conect;
da.DeleteCommand.CommandText = sql;
da.DeleteCommand.ExecuteNonQuery();
conect.Close();
}
public void executeupdate(string sql)
{
conect.Open();
da.UpdateCommand = new SqlCommand();
da.UpdateCommand .Connection = conect;
da.UpdateCommand.CommandText = sql;
da.UpdateCommand.ExecuteNonQuery();
conect.Close();
}
public DataTable executereport(string sql)
{
conect.Open();
da.SelectCommand = new SqlCommand();
da.SelectCommand.Connection = conect;
da.SelectCommand.CommandText = sql;
da.Fill(dt);
conect.Close();

return dt;
}
}
}

saeedeh119
دوشنبه 09 بهمن 1391, 23:11 عصر
ممنونم از توجهتون فقط من همه جا با storeprodure استفاده می کنم با توجه به اینکه هر رویه ای تعداد پارامترای مختلفی داره چطور بهش بفهمونم چندتا پارامتر بگیره؟