Значение по умолчанию для необнуляемых полей в значении типа по умолчанию при загрузке CSV в EF Effort - PullRequest
0 голосов
/ 01 мая 2019

Я использую загрузчик CSV для загрузки фиктивных данных в Effort.Коллега зарегистрировал изменение в одной из наших таблиц базы данных (новый необнуляемый столбец), и его gated-регистрация не удалась, потому что Effort пытался присвоить нулевое значение, когда мы ожидали, что значения равны 0.

Если не считать возврата назад и изменения каждой строки в файле CSV, есть ли способ заставить Effort заполнить эти необнуляемые столбцы значением по умолчанию для их типов?

Exception message:Effort.Exceptions.EffortException : An unhandled exception occurred while trying to assign value '[null]' to Property 'TaskQueueId' of type 'System.Int32' during entity initialization for table 

1 Ответ

1 голос
/ 02 мая 2019

Как в этом примере на https://entityframework -effort.net / load-data-from-csv :

IDataLoader loader = new Effort.DataLoaders.CsvDataLoader(@"D:\CsvFiles")

using (NorthwindEntities ctx = Effort.ObjectContextFactory.CreateTransient(loader))
{
    var products = ctx.Products.ToList();
}

Вы можете установить значение столбца при материализации объектов.Например, если нам нужно установить какое-либо свойство для Product объектов:

var products = ctx.Products.ToList();
foreach(var p in products)
{
    p.UnitPrice *=1.2m;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...