PDA

View Full Version : ایجاد نوع مشخص و استفاده ان در برنامه با Entity Framework



hossein_va
چهارشنبه 02 اردیبهشت 1394, 22:13 عصر
سلام.
من میخوام یه نوع خاصی خودم تعریف کنم مثلا دارای id , name , price باشه و وقتی کوئری میگیرم نتایج کوئری را درون این نوع خاص قرار بدم.

مثلا کوئری زیر را ببینید

var query = myShop.SearchSize(item.Value).Where(t => t.Price > minValuePrice && t.Price < maxValuePrice && t.type==productType);


میخوام به جای اینکه بریزیم تو متغیر از نوع var بریم تو متغیری که خودم تعریف کردم

khokhan
چهارشنبه 02 اردیبهشت 1394, 22:28 عصر
سلام.
من میخوام یه نوع خاصی خودم تعریف کنم مثلا دارای id , name , price باشه و وقتی کوئری میگیرم نتایج کوئری را درون این نوع خاص قرار بدم.

مثلا کوئری زیر را ببینید

var query = myShop.SearchSize(item.Value).Where(t => t.Price > minValuePrice && t.Price < maxValuePrice && t.type==productType);


میخوام به جای اینکه بریزیم تو متغیر از نوع var بریم تو متغیری که خودم تعریف کردم

....................................

public static ArrayList GetMembersItems(string minValuePrice,string productType)
{
ArrayList items = new ArrayList();

items.AddRange(myShop.SearchSize(item.Value).Where (t => t.Price > minValuePrice && t.Price < maxValuePrice && t.type==productType)
.ToList());
return items;
}

hossein_va
چهارشنبه 02 اردیبهشت 1394, 23:04 عصر
مرسی ولی منظورم این بود ک ی نوع خاصی داشته باشم و نتایج را بریزم تو اون نه arraylist

مهرداد صفا
چهارشنبه 02 اردیبهشت 1394, 23:21 عصر
سلام.
به این شکل عمل کنید:


var q=source.Where(...).Select((r) new {ID=r.id,name =R.Last+R.First});




در مورد دستور Select و Unonymous types (https://msdn.microsoft.com/en-us/library/bb397696.aspx) مطالعه کنید.

Mahmoud.Afrad
چهارشنبه 02 اردیبهشت 1394, 23:32 عصر
یک مدل(کلاس) ایجاد کن مثل کلاس زیر

internal class MyViewModel
{
public int Id { get; set; }
public string Name { get; set; }
public decimal Price { get; set; }
}

انتهای کوئری در متد select یه ازای هر آیتم انتخابی یک شئ از کلاس بالا بساز و با مقادیر رکورد مقداردهی کن.
List<MyViewModel> view =
myShop
.SearchSize(item.Value)
.Where(t => t.Price > minValuePrice
&& t.Price < maxValuePrice
&& t.type == productType)
.Select(item =>
new MyViewModel()
{
Id = item.id,
Name = item.name,
Price = item.price
})
.ToList();