キー - >郵便番号と値 - >都市のコンボボックスを作成して、私の宿泊施設のフィルタとして使用したいと考えています。ビルドするクエリから一意の値を取得する
リスト内のアイテムの数を制限するために、私はテーブルtblAccomodationsを埋めるときに使用した郵便物のみを使用します。 私は後で更新について考えていますが、私は郵便と都市のリレーショナルテーブルを使用しません。
ここ私は私の辞書を構築する:いくつかのAccomodationsは、同じ都市に位置しているので、キーの二重の値があります
public static Dictionary<int, string> getPostals()
{
Dictionary<int, string> oPostals = new Dictionary<int, string>();
using (DBReservationDataContext oReservation = new DBReservationDataContext())
{
var oAllPostals = (from oAccomodation in oReservation.tblAccomodations
orderby oAccomodation.Name ascending
select oAccomodation);
foreach (tblAccomodation item in oAllPostals)
{
oPostals.Add(int.Parse(item.Postal), item.City);
}
}
return oPostals;
}
予想したように、私はエラーを得ました。ユニークな都市と郵便のリストを(キーとして)どうすれば入手できますか? 私は
select oAccomodation.Postal.Distinct()
を使用しようとしましたが、それはどちらか動作しませんでした。
更新:私は主な問題を発見しました。同じ郵便番号を持つ複数の都市があります(「サブシティ」)。だから私は "郵便"ではなく "市"にフィルターをかけるつもりです。あなたが郵便一つに複数の都市を持っている場合
私は本当にDistinct()で試していましたが、どちらもうまくいきませんでした。今私は問題が何かを見てきました。同じ郵便を持っている都市があり、私はそれが崩壊したと思う。 – bflydesign