wolf_majid
شنبه 04 بهمن 1393, 21:51 عصر
سلام دوستان
متد زیر رو در نظر بگیرید
public static bool Edit(DaftarPishkhan daftar)
{
if (daftar == null) throw new NullReferenceException("پارامتر ورودی نباید نال باشد");
var fetchById = SelectFromId(daftar.Id);
if (fetchById == null) throw new Exception("دفتر پیشخوانی با این آیدی وجود ندارد");
if (!daftar.cityCode.HasValue || ZoneRepository.SelectFromCityCode(daftar.cityCode. Value) == null)
throw new Exception("کد شهر نامعتبر است");
//foreach (var property in daftar.GetType().GetProperties())
//{
// var propertyInfo = fetchById.GetType().GetProperty(property.Name);
// propertyInfo.SetValue(fetchById,property.GetValue( property.Name,null),null);
//}
fetchById.Address = daftar.Address;
fetchById.cityCode = daftar.cityCode;
fetchById.Hozeh = daftar.Hozeh;
fetchById.Id = daftar.Id;
fetchById.LastNameSherkatName = daftar.LastNameSherkatName;
fetchById.NationalCode = daftar.NationalCode;
fetchById.PostalCode = daftar.PostalCode;
fetchById.TellCode = daftar.TellCode;
fetchById.TellNo = daftar.TellNo;
Entities.SaveChanges();
return true;
}
چطور میشه بجای اینکه من کلاس fetchById رو دونه دونه مقداردهی کنم به یکباره اون را با پارامتر ورودی مقداردهی کنم ؟
متد زیر رو در نظر بگیرید
public static bool Edit(DaftarPishkhan daftar)
{
if (daftar == null) throw new NullReferenceException("پارامتر ورودی نباید نال باشد");
var fetchById = SelectFromId(daftar.Id);
if (fetchById == null) throw new Exception("دفتر پیشخوانی با این آیدی وجود ندارد");
if (!daftar.cityCode.HasValue || ZoneRepository.SelectFromCityCode(daftar.cityCode. Value) == null)
throw new Exception("کد شهر نامعتبر است");
//foreach (var property in daftar.GetType().GetProperties())
//{
// var propertyInfo = fetchById.GetType().GetProperty(property.Name);
// propertyInfo.SetValue(fetchById,property.GetValue( property.Name,null),null);
//}
fetchById.Address = daftar.Address;
fetchById.cityCode = daftar.cityCode;
fetchById.Hozeh = daftar.Hozeh;
fetchById.Id = daftar.Id;
fetchById.LastNameSherkatName = daftar.LastNameSherkatName;
fetchById.NationalCode = daftar.NationalCode;
fetchById.PostalCode = daftar.PostalCode;
fetchById.TellCode = daftar.TellCode;
fetchById.TellNo = daftar.TellNo;
Entities.SaveChanges();
return true;
}
چطور میشه بجای اینکه من کلاس fetchById رو دونه دونه مقداردهی کنم به یکباره اون را با پارامتر ورودی مقداردهی کنم ؟