我正在尝试使用下面的代码在我的数据库的“UserAlertSubscriptions”表中添加一个条目,该条目只是将用户链接到警报配置。
问题是,虽然我没有收到错误,但条目没有添加到数据库中。
知道我做错了什么。如您所见,我尝试了 ApplyAllChanges,但这没有任何区别。
AlerterDataEntities alerterDataEntities = new AlerterDataEntities()
// get current user
User user = alerterDataEntities.Users.Where(u => u.UserID == 1).ToList<User>()[0];
// get selected alert configuration
AlertConfiguration alertConfiguration =
alerterDataEntities.AlertConfigurations.Where(a => a.AlertConfigurationID == 3).ToList
<AlertConfiguration>()[0];
UserAlertSubscription userAlertSubscription = new UserAlertSubscription
{
User = user,
AlertConfiguration = alertConfiguration
};
user.UserAlertSubscriptions.Add(userAlertSubscription);
//alerterDataEntities.AcceptAllChanges();
alerterDataEntities.SaveChanges();
最佳答案
全部修复 - 我发现问题是每次运行数据库时都会将数据库复制到输出目录。因此,我正在查看的表(应用程序根目录中的表)不是它添加到的表。
@Jean-Lois 解决的这篇文章是我找到解决方案的地方:
C# Entitity framework SaveChanges() not working
为了解决这个问题,我将数据库“复制到输出目录”设置为“不复制”,并将完整的文件路径放在 app.config 的数据库连接字符串中
关于.net - .SaveChanges 不对 Entity Framework 中的数据库应用更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5979013/