PDA

View Full Version : سوال: نوشتن یک کلاس جامع برای برنامه



mehdin69
چهارشنبه 07 فروردین 1392, 00:42 صبح
سلام دوستان من توی برنامه ای که دارم توی یکی از لایه های برنامه برای هر جدول که توی دیتابیس هست یک تابع هم مثل زیر وجود داره


public DataSet Get(int? ID, string FK_UserName, string ip, string url, DateTime logDate, string action, bool IsDeleted = false)
{
DataAccess da = new DataAccess();
SqlParameter[] parameters = new SqlParameter[7];
parameters[0] = new SqlParameter("ID", ID);
parameters[1] = new SqlParameter("FK_UserName", FK_UserName);
parameters[2] = new SqlParameter("ip", ip);
parameters[3] = new SqlParameter("url", url);
parameters[4] = new SqlParameter("logDate", logDate);
parameters[5] = new SqlParameter("action", action);
parameters[6] = new SqlParameter("IsDeleted", IsDeleted);
return da.ExecSpRetDataset("", parameters);
}


فقط تفاوتی که این کلاس های من با همدیگه دارن همین پارامتر هایی هست که داره اینجا نوشته میشه
به نظر شما چطوری باید اینو بنویسم تا یک بار این تابع رو بنویسم و فقط پارامتر ها رو عوض کنم؟

نخواد برای 100 تا جدول 100 بار اینو بنویسم و حداقل بخواد فقط اسم پارامتر ها رو بدم؟؟؟؟

مرسی ازتون

matin.soft
چهارشنبه 07 فروردین 1392, 13:01 عصر
چرا از امکاناتی که در خود دیتاست تولید شده توسط ویژوال استودیو هست استفاده نمی کنی.
اگه بخوای کدها رو دستی بنویسی هم خسته کننده است و هم اگه بخوای یه فیلدی رو به جدولت اضافه یا حذف کنی بعدا دردسر می شه. چون این مشکل به سرم اومده پیشنهاد می کنم از دیتا ست خود vs استفاده کنی.
موفق باشی.

mehdin69
چهارشنبه 07 فروردین 1392, 20:11 عصر
مرسی بابت پاسخی که دادین
حالا اون کد یه نمونه مثال بود اگه یه کد شبیه زیر یا امثال اینها داشته باشیم چی؟
مثلاً یه نمونه کد دیگه میزارم که باز هم چندین و چند بار تکرار میشه ( از هیچ ویزاردی نمی خوام استفاده کنم می خوام نحوه کد نویسی رو یاد بگیرم )


public int Add(string FK_UserName, string ip, string url, DateTime logDate, string action, bool IsDeleted = false)
{
DataAccess da = new DataAccess();
SqlParameter[] parameters = new SqlParameter[5];
parameters[0] = new SqlParameter("FK_UserName", FK_UserName);
parameters[1] = new SqlParameter("ip", ip);
parameters[2] = new SqlParameter("url", url);
parameters[3] = new SqlParameter("logDate", logDate);
parameters[4] = new SqlParameter("action", action);
object result = da.ExecSpRetDataset("", parameters);
if (da.IsSuccessfull)
return (int)result;
return 0;
}


مرسی

mehdin69
جمعه 09 فروردین 1392, 11:45 صبح
دوستان اینجور که پیداست باید از قالب های T4 استفاده کنم
اما هیچ آموزش جامعی از نحوه کد نوشتن کدهای Text template یا T4 موجود نیست
کسی هست که کمکی کنه؟

مرسی