0

私は自分のモデルの親クラスを持っています:

public class MyModel
{
    public ThemesModel themesModel { get; set; }
    public ThemeGroupsModel themesGroupsModel { get; set; }
    public ThemeTypsModel themesTypesModel { get; set; }
} 

私は自分の方法でそれを使用します:

public List<MyModel> getAllTheme()
{
    List<MyModel> myModelList = new List<MyModel>();
    MyModel myModelTemp;
    using (var context = new EShopThemeDBEntities(idbconnection.ConnStr))
    {
        var ThemeTypeQ = (//some queries... ).ToList();

        if (ThemeTypeQ != null)
        {
             foreach (var item in ThemeTypeQ)
             {
                   myModelTemp = new MyModel();
                   myModelTemp.themesTypesModel.ThemeTypeName = item.ThemeTypeName;
                      .
                      .
                      .
             } 
        } 
    }

    return myModelList;   
 }

次の行でエラーが発生します。

myModelTemp.themesTypesModel.ThemeTypeName = item.ThemeTypeName;

エラー:

オブジェクト参照がオブジェクト インスタンスに設定されていません。

私は使用Tuple<ThemeTypsModel, ThemesModel, ThemeGroupsModel>する代わりに使用MyModelしていましたが、私のプロジェクトは以前に機能していました。

それを解決するにはどうすればよいですか?

4

1 に答える 1

1

MyModel.cs を次のように変更して、自分で解決します。

public class MyModel
{
public ThemesModel themesModel { get; set; }
public ThemeGroupsModel themesGroupsModel { get; set; }
public ThemeTypsModel themesTypesModel { get; set; }

  public MyModel()
    {
        themesModel = new ThemesModel();
        themesGroupsModel = new ThemeGroupsModel();
        themesTypesModel = new ThemeTypsModel();
    }

}

同じ問題を抱えている他の人が使用するために質問を削除しません。

于 2012-10-28T07:53:40.083 に答える