50٪ تخفیف روی تمام دوره‌ها!
پایان تخفیف تا:
مشاهده دوره‌ها
0

مشکل در distinct کردن داده ها با استفاده از linq

سلام خدمت تمامی اساتید و دوستان itpro، در حال نوشتن یک کوئری با استفاده از تکنولوژی LINQ هستم، مشکلی با اجرا و خروجی داده ها ندارم، تنها شکل من اینه که چون از چندین جدول ، چندین پارامتر رو دارم خارج میکنم، کوئری به من چندین Model برمیگردونه،

var model =
                    Dbcontex.RoomDates.Distinct().Where(
                        x => (x.Room.Hotel.Name.Contains(search)) || (x.Room.Hotel.City.Contains(search))
                             && (x.Room.AdultPeople == guest1) ||
                             (x.NumberReserve == room1) && (b) && (x.Room.Hotel.HotelCategoryId == id)).Distinct();
                
                return PartialView(model);

همون طور که میبینید، من در آخر دستوراتم، از Distinct استفاده کردم که اگه داده های همسان پیدا کرد، برای من فقط یکی از اون داده ها رو نمایش بده، ولی مشکلی که هست، اینه که به من داده های همسانو هم نمایش میده و عملا Distinct اجرا نمیشه! کد من اشتباهه! یا نحوه استفاده از Distinct به شکل دیگریست.

ممنون.

itrpro باشید.

پرسیده شده در 1395/08/05 توسط

1 پاسخ

1

سلام، برای Distinct گرفتن از داده ها باید یک فیلد از نوع Primary رو انتخاب کنی و روش متد Distinct رو اجرا کنید. برای مثال:

var phones = context.Customers.Select(c=>c.PhoneNumber).Distinct();
پاسخ در 1395/08/10 توسط

پاسخ شما