插入关联表(ASP.NET MVC)

时间:2011-12-13 13:05:16

标签: c# asp.net-mvc entity-framework

我正在编写我的第一个ASP.NET MVC项目,并且对此主题非常缺乏经验,所以请耐心等待。

我必须使用现有数据库来构建我需要构建的新应用程序。我已将其设置为数据源,并使用ADO.NET实体数据模型来选择我需要的表。我有一个表,其中包含与父记录关联的类别,并由唯一ID连接。此表未出现在设计器中,但出现在Associations文件夹中。如何在此表中插入记录?或者我是否完全错了?

以下是我到目前为止创建的代码:

//
// POST: /Home/Create
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create([Bind(Exclude = "KeyID")] KeyDate dateToCreate, int topic, int level, int subject, int audience)
{
    dateToCreate.Created = DateTime.Now;
    dateToCreate.CreatedBy = User.Identity.Name;

    if (!ModelState.IsValid)
        return View();

    keyDateRepository.Add(dateToCreate);
    keyDateRepository.Save();

    return RedirectToAction("Index");
}

以下是存储库的代码:

//
// Insert/Delete Methods

public void Add(KeyDate keyDate)
{
   db.KeyDates.AddObject(keyDate);
}

[...]

//
// Persistence

public void Save()
{
    db.SaveChanges();
}

任何帮助都非常感激。

1 个答案:

答案 0 :(得分:0)

好吧,我明白了。我没有意识到我需要做的就是将类别添加到该对象的实例中。

dateToCreate.Categories.Add(keyDateRepository.GetCategory(topic));
dateToCreate.Categories.Add(keyDateRepository.GetCategory(level));
dateToCreate.Categories.Add(keyDateRepository.GetCategory(subject));
dateToCreate.Categories.Add(keyDateRepository.GetCategory(audience));