Nithin B Ответов: 0

Почему entity framework не вставляет данные в файл. mdf?


Привет,

Я использую * * консольное приложение** для вставки данных в файл .mdf, который находится в папке App_Data, и файл.edmx в папке проекта.

Тот же самый приведенный ниже код работает с 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.

Пожалуйста помочь.

Что я уже пробовал:

Я попытался изменить расположение файлов mdf и. edmx из папки проекта на App_Data (оба в одном и том же, по одному в каждом)
Но у меня ничего не вышло
Когда я пытаюсь создать файл. edmx, он говорит "Выбранное вами соединение использует локальный файл данных, которого нет в текущем проекте.Вы хотите скопировать его в проект?" чего я не получаю в MVC, хотя файл mdf находится в папке App_Data.
.

Richard Deeming

Это звучит так, как будто вы перезаписываете или заново создаете базу данных каждый раз, когда запускаете приложение.

У вас есть пустая копия mdf-файла где-то в вашем проекте с установленным параметром "копировать в выходной каталог"?

BacchusBeale

Почему вы не используете SQL Server Management Studio или sqlconnection string?

johannesnestler

получите возвращаемое значение из Save call и посмотрите, получите ли вы ожидаемое "1" (то, что вы перечисляете, теперь один элемент был сделан add call, не имеет ничего общего с save - так что сначала проверьте это.) После этого я бы сказал, что то, что имел в виду Ричард, звучит разумно (вы как - то переписываете его- так что проверьте свой окружающий код)

0 Ответов