いくつかのビューのドロップダウン リストを作成する必要があります。同じドロップダウンを使用して、ドロップダウンのコンテンツを生成する Html ヘルパー メソッドを作成しました。
public static List<SelectListItem> GetBatchNumbers(this HtmlHelper html)
{
List<SelectListItem> items = new List<SelectListItem>();
ModelContainer ctn = new ModelContainer();
var batchNumbers = ctn.SearchResults.OrderBy(x => x.BatchID).ToList();
foreach (var batch in batchNumbers.Distinct())
{
items.Add(new SelectListItem()
{
Text = batch.BatchID + "-" + batch.WebsiteName + "-" + batch.SourceName,
Value = batch.BatchID
});
}
return items;
}
したがって、私のテスト データでは、検索結果の 3 つのバッチを実行しました。そのため、ドロップダウン リストに 3 つのバッチ番号を表示したいと考えています。ただし、SearchResults テーブルのエントリごとにバッチ番号が繰り返されるので、Distinct() 句が期待どおりに機能していないように見えます。
Distinct() はオブジェクトではトリッキーであることを読みましたが、これを別の方法で達成する方法を知っている人はいますか?