Entity Framework sélectionne un nom distinct

Comment puis-je effectuer cette requête SQL avec Entity Framework ?

SELECT DISTINCT NAME FROM TestAddresses 

Utiliser l’expression lambda

  var result = EFContext.TestAddresses.Select(m => m.Name).Distinct(); 

Essaye ça:

 var results = (from ta in context.TestAddresses select ta.Name).Distinct(); 

Cela vous donnera un IEnumerable – vous pouvez appeler .ToList() pour obtenir un List .

La façon dont @alliswell a montré est tout à fait valide, et il y a une autre façon! 🙂

 var result = EFContext.TestAddresses .GroupBy(ta => ta.Name) .Select(ta => ta.Key); 

J’espère que ça va être utile à quelqu’un.

 product.Select(m => new {m.CategoryId, m.CategoryName}).Distinct(); 

Dans cet exemple, aucun CategoryId en double et aucun CategoryName, j’espère que cela vous aidera

Entity-Framework Select Distinct Name:

Supposons que si vous utilisez des vues dans lesquelles vous utilisez plusieurs tables et que vous souhaitez appliquer une distinction dans ce cas, vous devez d’abord stocker la valeur dans la variable et vous pouvez appliquer Distinct à cette variable comme celle-ci ….

 public List GetItemDescription(int ItemNo) { var Result= db.Item_Img_Sal_VIEW.Where(p => p.ItemID == ItemNo).ToList(); return Result.Distinct().ToList(); } 

Ou vous pouvez essayer cet exemple simple

 Public Function GetUniqueLocation() As List(Of Integer) Return db.LoginUsers.Select(Function(p) p.LocID).Distinct().ToList() End Function 

utilisez Select (). Distinct ()

par exemple

 DBContext db = new DBContext(); var data= db.User_Food_UserIntakeFood .Select( ).Distinct(); 

Entity-Framework Select Distinct Name:

Supposons que si vous voulez toutes les premières données d’une colonne particulière de chaque groupe;

  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); } }