値を比較しようとしている 2 つのリストがありますが、問題は、一方が typeList<string>
で、もう一方が type であることList<SelectListItem>
です。
これは私が現在持っているもので、問題なく動作しますが、このような単純な比較チェックには多くのオーバーヘッドがあるように感じます。
List<SelectListItem> fullSubjects = SubRepo.GetSubjects();
//Create our custom list based off the diff
Manage.UserCustomSubjects = Manage.UserSubjects.Where(item => !StaticReferenceList.Contains(item)).ToList();
foreach (var s in Manage.UserCustomSubjects)
{
var checkval = fullSubjects.FirstOrDefault(t => t.Text == s);
if (checkval == null)
{
var additem = new SelectListItem();
additem.Text = s;
additem.Value = s;
fullSubjects.Add(additem);
}
}
ここでの全体的な目標はfullSubjects
、重複する値のないリストを作成することです。
これをクリーンアップする方法、または比較を LINQify する方法について何か提案はありますか?