Orm Windows Phone 7上的CoolStorage-映射问题

Orm Windows Phone 7上的CoolStorage-映射问题,orm,windows-phone-7,coolstorage,Orm,Windows Phone 7,Coolstorage,我正在Windows Phone 7应用程序中使用Vici.CoolStorage访问SQLite数据库。我在此行收到一个空引用异常: CSList<Regimen> regimens = Regimen.List(); 相关模型的映射为: using Vici.CoolStorage; namespace MyApp.Core.Domain { [MapTo("Regimen")] public class Regimen : CSObject<Regi

我正在Windows Phone 7应用程序中使用Vici.CoolStorage访问SQLite数据库。我在此行收到一个空引用异常:

 CSList<Regimen> regimens = Regimen.List();
相关模型的映射为:

using Vici.CoolStorage;

namespace MyApp.Core.Domain
{
    [MapTo("Regimen")]
    public class Regimen : CSObject<Regimen,int>
    {  
        public int ID
        {
            get { return (int)GetField("ID"); }
            set { SetField("ID", value); }
        }
        public string Name
        {
            get { return (string)GetField("Name"); }
            set { SetField("Name", value); }
        }

        [OneToMany(LocalKey = "ID", ForeignKey = "RegimenID")]
        public CSList WorkoutDays
        {
            get { return (CSList)GetField("WorkoutDays"); }
        }
    }
}

using Vici.CoolStorage;

namespace MyApp.Core.Domain
{
    [MapTo("WorkoutDay")]
    public class WorkoutDay : CSObject<WorkoutDay,int>
    {
        public int ID
        {
            get { return (int)GetField("ID"); }
            set { SetField("ID", value); }
        }
        public int DayNumber
        {
            get { return (int)GetField("DayNumber"); }
            set { SetField("DayNumber", value); }
        }

        [ManyToOne(LocalKey="RegimenID", ForeignKey="ID")]
        public Regimen Regimen
        {
            get { return (Regimen)GetField("Regimen"); }
            set { SetField("Regimen", value);}
        }
    }
}
使用Vici.CoolStorage;
命名空间MyApp.Core.Domain
{
[MapTo(“养生法”)]
公共类:CSObject
{  
公共整数ID
{
获取{return(int)GetField(“ID”);}
set{SetField(“ID”,value);}
}
公共字符串名
{
获取{return(string)GetField(“Name”);}
set{SetField(“Name”,value);}
}
[OneToMany(LocalKey=“ID”,ForeignKey=“RegimenID”)]
公共CSList工作日
{
获取{return(CSList)GetField(“WorkoutDays”);}
}
}
}
使用Vici.CoolStorage;
命名空间MyApp.Core.Domain
{
[映射到(“工作日”)]
公共类WorkoutDay:CSObject
{
公共整数ID
{
获取{return(int)GetField(“ID”);}
set{SetField(“ID”,value);}
}
公共整数日数
{
获取{return(int)GetField(“DayNumber”);}
set{SetField(“DayNumber”,value);}
}
[ManyToOne(LocalKey=“RegimenID”,ForeignKey=“ID”)]
公共养生
{
获取{return(方案)GetField(“方案”);}
set{SetField(“方案”,值);}
}
}
}

如果我在养生模式中对“一夫一妻”的关系进行评论,效果会很好。我不知道我的映射出了什么问题。

在你的养生课程中,返回类型不应该是
CSList
它应该是
CSList
,所以请更改以下内容:

    [OneToMany(LocalKey = "ID", ForeignKey = "RegimenID")]
    public CSList WorkoutDays
    {
        get { return (CSList)GetField("WorkoutDays"); }
    }
为此:

    [OneToMany(LocalKey = "ID", ForeignKey = "RegimenID")]
    public CSList<WorkoutDay> WorkoutDays
    {
        get { return (CSList<WorkoutDay>)GetField("WorkoutDays"); }
    }
[OneToMany(LocalKey=“ID”,ForeignKey=“RegimenID”)]
公共CSList工作日
{
获取{return(CSList)GetField(“WorkoutDays”);}
}
此处的文档(一对多关系部分的最后一段):

    [OneToMany(LocalKey = "ID", ForeignKey = "RegimenID")]
    public CSList<WorkoutDay> WorkoutDays
    {
        get { return (CSList<WorkoutDay>)GetField("WorkoutDays"); }
    }