使用模型类而不是使用Tuple时出错

时间:2012-10-28 07:14:33

标签: asp.net-mvc-3 model

我有我的模型的父类:

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而我的项目之前已经有效。

我该怎么做才能解决它?

1 个答案:

答案 0 :(得分: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();
    }

}

我不会删除我的问题以供有相同问题的其他人使用。