Відповіді:
Використовуючи лямбда-вираз ..
var result = EFContext.TestAddresses.Select(m => m.Name).Distinct();
Спробуйте це:
var results = (from ta in context.TestAddresses
select ta.Name).Distinct();
Це дасть вам IEnumerable<string>
- ви можете зателефонувати .ToList()
на нього, щоб отримати List<string>
.
Спосіб, який показав @alliswell , цілком справедливий, і є інший шлях! :)
var result = EFContext.TestAddresses
.GroupBy(ta => ta.Name)
.Select(ta => ta.Key);
Сподіваюся, комусь це стане в нагоді.
DBContext.TestAddresses.Select(m => m.NAME).Distinct();
якщо у вас є кілька стовпців, виконайте це так:
DBContext.TestAddresses.Select(m => new {m.NAME, m.ID}).Distinct();
У цьому прикладі жодних дублікатів CategoryId і немає CategoryName, сподіваюся, це допоможе вам
Вибір чіткої назви сутності-рамки:
Припустимо, якщо ви використовуєте представлення, в якому ви використовуєте кілька таблиць, і ви хочете застосувати різні в цьому випадку, спочатку вам потрібно зберегти значення у змінній, а потім ви можете застосувати Distinct до цієї змінної, як ця ....
public List<Item_Img_Sal_VIEW> GetItemDescription(int ItemNo)
{
var Result= db.Item_Img_Sal_VIEW.Where(p => p.ItemID == ItemNo).ToList();
return Result.Distinct().ToList();
}
Або ви можете спробувати цей простий приклад
Public Function GetUniqueLocation() As List(Of Integer)
Return db.LoginUsers.Select(Function(p) p.LocID).Distinct().ToList()
End Function
наприклад, виберіть (). Відмінність (),
наприклад
DBContext db = new DBContext();
var data= db.User_Food_UserIntakeFood .Select( ).Distinct();
Щоб уникнути ORDER BY items must appear in the select list if SELECT DISTINCT
помилок, найкраще має бути
var results = (
from ta in DBContext.TestAddresses
select ta.Name
)
.Distinct()
.OrderBy( x => 1);
Вибір чіткої назви сутності-рамки:
Припустимо, якщо вам потрібні всі перші дані певного стовпця кожної групи;
var data = objDb.TableName.GroupBy(dt => dt.ColumnName).Select(dt => new { dt.Key }).ToList();
foreach (var item in data)
{
var data2= objDb.TableName.Where(dt=>dt.ColumnName==item.Key).Select(dt=>new {dt.SelectYourColumn}).Distinct().FirstOrDefault();
//Eg.
{
ListBox1.Items.Add(data2.ColumnName);
}
}