年 (nvarchar) という列を持つデータベースがあり、この列の値をドロップボックスに追加して、降順に並べ替えたいと考えています。
これは私が使用しているコードです:
List<string>years = db.tbl1.Select(w => w.Year).Distinct().ToList();
years.reverse();
foreach (string year in years) { drop_years.Items.Add(year);}
2012年、2010年、2009年、2011年などのような文字列になるため、機能していません..
私が使用する場合:
List<int> years = db.tbl1.Select(w => w.Year).Distinct().ToList();
コンパイラは、型 ..< string > を ..< int >... に暗黙的に変換できないことを教えてくれます。
私は初心者で、この問題を解決する方法がわかりません。手伝っていただけませんか?
私はこれについて検索しましたが、私のものと同様のトピックは理解するのに役立ちませんでした.
私の問題を管理するために、私は非常に専門的でない方法を使用しました。
var years = db.tbl1.Select(w => w.Year).Distinct();
List<int> yearsList = new List<int>();
foreach (string year in years)
{ yearsList.Add(Convert.ToInt32(year)); }
yearsList.Sort(); //I used Sort() because doesn't work only with Reverse();
yearsList.Reverse();
しかし、それはエレガントな解決策ではないことを私は知っています。
よろしくお願いします。