为什么实体框架没有将数据插入.mdf文件?

时间:2016-10-28 11:37:02

标签: c# entity-framework console-application

我正在使用控制台应用程序将数据插入到项目文件夹中的App_Data文件夹和.edmx文件中的.mdf文件中。

以下相同的代码正在使用mvc但不适用于控制台应用程序。

表是:

CREATE TABLE [dbo].[tbLegalDetails] (
[LegalStatusId]           INT            NOT NULL,
[LegalStatusName]         TEXT           NULL,
[LegalStatusHeading]      TEXT           NULL,
[PatentOfInvention]       NVARCHAR (100) NULL,
[EventCode]               VARCHAR (100)  NULL,
[EventExplination]        TEXT           NULL,
[CCOfCorrespondingPatent] NVARCHAR (100) NULL,
[CorrespondingPatentD]    INT            NULL,
PRIMARY KEY CLUSTERED ([LegalStatusId] ASC)
);

插入数据的代码是:

ConsoleApplication__DynamicWebBrowserDatabaseEntities db = new ConsoleApplication__DynamicWebBrowserDatabaseEntities();
List<tbLegalDetail> hLegalDetaili = db.tbLegalDetails.ToList();

[Here count is shown as 0]

tbLegalDetail tbLegalDetail = new tbLegalDetail();
tbLegalDetail.LegalStatusId = 3;
tbLegalDetail.LegalStatusName = "INPADOC legal";
tbLegalDetail.LegalStatusHeading = "COMPOSITIONS ANDAPY";
tbLegalDetail.PatentOfInvention = "2003287377";
tbLegalDetail.EventCode = "FGA";
tbLegalDetail.EventExplination = "LETTSTANDARD PATENT";
tbLegalDetail.CCOfCorrespondingPatent = "dfs";
tbLegalDetail.CorrespondingPatentD = 1212;
db.tbLegalDetails.Add(tbLegalDetail);
db.SaveChanges();
List<tbLegalDetail> hLegalDetail = db.tbLegalDetails.ToList();

[Here count is shown as 1]

Console.ReadLine();

但是当我查看.mdf文件时,我看不到添加的行。 当我再次跑步时,我会将计数显示为0。

请帮忙。

2 个答案:

答案 0 :(得分:2)

控制台应用程序或Windows窗体应用程序使用来自调试文件夹(A副本)的资源。您是否可以从调试文件夹中显示的.mdf文件中获得更改(在运行之后/第二次运行之前)。

愿这篇文章更多地与你交谈.. http://www.codeproject.com/Articles/663453/Understanding-Clean-Build-and-Rebuild-in-Visual-St

答案 1 :(得分:1)

我正在回答@sgmoore和@vipin给出的评论。

我更改了 | DataDirectory |在App.config文件中的连接字符串中以完整路径解决了问题

谢谢。