C# 简单LINQ插入记录不工作

C# 简单LINQ插入记录不工作,c#,linq,insert,datacontext,C#,Linq,Insert,Datacontext,我有一个.mdf文件,我正试图使用C#中的linq向其中添加记录。 我的代码是: dbDataContext context = new dbDataContext(); book b = new book(); b.title = "Test Book"; b.isbn = "123789"; context.books.InsertOnSubmit(b); context.SubmitChanges(); 当此代码运行时,不会插入记录,并且不会收到任何错误消息。如果我使用数据库资源管理器添

我有一个.mdf文件,我正试图使用C#中的linq向其中添加记录。 我的代码是:

dbDataContext context = new dbDataContext();
book b = new book();
b.title = "Test Book";
b.isbn = "123789";
context.books.InsertOnSubmit(b);
context.SubmitChanges();
当此代码运行时,不会插入记录,并且不会收到任何错误消息。如果我使用数据库资源管理器添加具有相同数据的记录,它就可以工作


发生了什么?

通常,当发生这种情况时,表示更改将转到错误的数据库。检查dbml中的连接设置。要测试这个理论,请尝试以编程方式添加一两条记录,如果数据库中有标识字段,请在context.SubmitChanges()之后检查b.Id的值(其中Id等于您的标识列)。如果它有一个值,那么您肯定有一个连接问题&您应该检查另一个数据库。请特别注意您的bin/debug目录

可能您的代码在未提交的事务中运行?dbDataContext是否指向正确的数据库?你能用context.books.ToList()获取一些数据吗?不,它不在Transactionah,.mdf文件中。您是否正在使用中的副本。\bin\debug,但在项目文件夹中的文件中查找结果?噢!它突然起作用了。。。愚蠢的微软:谢谢你的帮助。我是个傻瓜,让c#在运行时将我的数据库复制到bin目录,所以我基本上是在做一个临时副本。哈哈!别担心,伙计。这种事一直发生在我身上。我最近一直在使用M$Sync框架,昨天也发生了类似的事情。让我忙了4个小时。让我知道当你得到那份餐饮服务工作时,他们是否在招聘你!;)