EF代码首先列出<DateTime>而不创建表

Nat*_*oop 1 .net c# code-first entity-framework-4

我正在用一个实体创建一个非常简单的EF4代码第一个项目.

public class Activity
{
    public Guid Id { get; set; }
    public string Description { get; set; }
    public List<DateTime> DateDone { get; set; }
    <snip>

    public Activity()
    {
        if(DateDone==null)
            DateDone = new List<DateTime>();
    }
}
Run Code Online (Sandbox Code Playgroud)

我重建我的项目,然后运行MVC3应用程序并生成数据库(确认,我已添加和删除列),我的数据是种子(当我修改种子数据时它在屏幕上更改)

我能够:

var activity = db.Activities.Find(id);
activity.DateDone = DateTime.Now;
db.SaveChanges();
Run Code Online (Sandbox Code Playgroud)

但是数据没有保存.我检查了数据库,因为只有一个表(Activity),它有所有相应的字段.我希望它应该有第二个表,ActivityDateDone有两个字段,ActivityGuid和DateDone.

我在做这项工作时缺少什么?

SLa*_*aks 6

实体框架不支持基本类型的集合.

您需要定义一个单独的类来保存DateTimes.