0

「エンティティ」を辞書にロードできないようです。ディクショナリに何かを追加しようとすると、「オブジェクトのインスタンスに設定されていないオブジェクト参照」が表示されます。どんな助けでも大歓迎です。

private TranslationEntities _db = new TranslationEntities();

private Dictionary<int, Language> _data;


private void LoadData()
        {
             var languages = _db.Languages.Include("Region").OrderBy(e => e.Region.Name).ThenBy(e => e.Name);

             foreach (Language item in languages)
              {
                   _data.Add(item.Id, item);   //// ERRORS HERE ////
              }
        }
4

1 に答える 1

4

dictionaryその上で関数を呼び出す前に、を初期化します。

private void LoadData()
{
    _data = new Dictionary<int, Language>();
    var languages = _db.Languages.Include("Region").OrderBy(e => e.Region.Name).ThenBy(e => e.Name);

    foreach (Language item in languages)
    {
        _data.Add(item.Id, item);   //// ERRORS HERE ////
    }
}

ここで、メソッド内で初期化しました。constructorシナリオ/コードによっては、クラスで辞書を初期化することも検討してください。

于 2012-07-15T04:51:55.767 に答える