0

我在 VS 2012 中使用 EF 5。我正在尝试将新记录保存到表中,但没有保存在表中,也没有引发错误。请帮忙 。我附上我的代码。

using (TestEntities context = new TestEntities(new TestEntityConnectionManager("Testconn").ConnectionString))
            {
                var newCan = new Can
                {
                    CanGUID = new Guid(canGuid),
                    CanName = canName,
                    CanDescription = canDescription,
                    DesignCandidateID = designCandidateId,
                    MigrationDataXml = migrationDataXml,
                    PersonID =  1,
                    LastModifiedPersonID = 1,
                    CreationDate = DateTime.Now,
                    LastModifiedDate = DateTime.Now,

                };
                context.Cans.AddObject(newCan);
                var paramOut =  context.SaveChanges();
                retval = paramOut.ToString();
4

2 回答 2

0

如果没有发生错误并且没有保存数据,则问题必须在您的连接字符串中。

实际上,您的 conStr 似乎没有连接到您想要的数据库!并且 db 初始化程序创建了一个新数据库(由于您的自定义 conStr)并将数据保存在其中。

于 2013-08-17T10:36:32.793 回答
0

这个好像不太对

var paramOut = context.SaveChanges();

应该在你的[HttpPost]方法中被包围if (ModelState.IsValid)

[HttpPost]
public ActionResult Create(CLASS Model)
{
        if (ModelState.IsValid)
        {
                db.Table.Add(Model);
                db.SaveChanges();
                return RedirectToAction("Index");
        }
        return View(Model);
}
于 2013-08-16T21:38:45.547 回答