مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

کاربر سایت

kolalimorteza

عضویت از 1393/09/13

LINQ Distinct در MVC

  • سه شنبه 11 خرداد 1395
  • 18:27
تشکر میکنم

با سلام 

من در دستورات LINQ می خواهم فیلد مربوط به جدول مثلا فیلد YY بصورت Distinct بیاید و رکورد های تکراری نمایش داده نشود دستور زیر را نوشتم ولی اعمال نمی شود و رکورد های تکراری در فیلد YY نمایش داده می شوند

 List<TblAssignMovieCodeFilmCrew> qGetTypeMovies = (from a in db.TblAssignMovieCodeFilmCrews
                                                                   where a.TblUser.UserName.Equals(UserName)
                                                                   select a).Distinct().ToList();
                return qGetTypeMovies;

پاسخ های این پرسش

تعداد پاسخ ها : 4 پاسخ
کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • سه شنبه 11 خرداد 1395
  • 18:41

با استفاده از nuget باید DistinctBy را اضافه کنید

احتمال داره مقدار از ستون ها با هم تفاوت داشته باشه پس برای همین کوئری شما کار نمیکنه

کلاس فوق را اضافه کنید و سپس میتونید شرط بزارید بر اساس کدام ستون فیلتر کند

کاربر سایت

kolalimorteza

عضویت از 1393/09/13

  • سه شنبه 11 خرداد 1395
  • 20:00

من رفرنس مورد نظر را از لینک زیر اضاف کردم ولی همانطور که در تصویر بالا مشاهده می فرمائید DistinctBy اضافه نشده است دلیلش چیست

https://www.nuget.org/packages/morelinq/

کاربر سایت

ایمان مدائنی

عضویت از 1392/01/20

  • چهارشنبه 12 خرداد 1395
  • 08:37

باید فضای نام را اضافه کنید

اینکار را کردید ؟

کاربر سایت

kolalimorteza

عضویت از 1393/09/13

  • چهارشنبه 12 خرداد 1395
  • 17:43

using MoreLinq; اضاف کردم درست شد 

List<TblAssignMovieCodeFilmCrew> qGetTypeMovies = (from a in db.TblAssignMovieCodeFilmCrews
                                                                   where a.MovieCode.Equals(Moviecode)
                                                        select a).DistinctBy(c => c.MovieCode).ToList

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)