.保存更改,但不将更改应用于实体框架中的数据库



>我正在尝试使用以下代码在我的数据库的"用户警报订阅"表中添加一个条目,该条目仅将用户链接到警报配置。

问题是,虽然我没有收到任何错误,但该条目不会添加到数据库中。

知道我做错了什么。如您所见,我尝试了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# 实体性框架 SaveChanges() 不起作用

为了解决这个问题,我将数据库"复制到输出目录"设置为"不复制",并将完整的文件路径放在 app.config 的数据库连接字符串中

最新更新