我在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();
答案 0 :(得分: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);
}
答案 1 :(得分:0)
如果没有发生错误且没有保存数据,则问题必须出在您的连接字符串中。
事实上,您的conStr似乎没有连接到您想要的数据库!并且db初始化程序创建了一个新数据库(因为你的自定义conStr)并将数据保存在其中。