Не удается сохранить список с помощью Massive от Роба Конери

#c# #c#-4.0 #dynamic #massive

#c# #c #-4.0 #динамический #массивный

Вопрос:

Я использую Massive от Роба Конери для подключения к моей базе данных, но, похоже, я не могу сохранить список динамических объектов в базе данных. Я думал, что это все же поддерживается.

Вот код, который я пытаюсь использовать:

     int numberOfChildren = int.Parse(Request.Form["numberOfChildren"]);        
    List<dynamic> children = new List<dynamic>();

    for(int i = 1; i <= numberOfChildren; i  ) {
        dynamic child = new ExpandoObject();
        child.FamilyID = familyId;
        child.Type = "CHILD";
        child.LastName = Request.Form[i   "-childLastName"];
        child.FirstName = Request.Form[i   "-childFirstName"];
        child.SendSmsAlerts = false;
        child.Gender = Request.Form[i   "-childGender"];
        child.Birthdate = Request.Form[i   "-childBirthdate"];

        children.Add(child);
    }

    var people = new People();
    people.Save(children);
  

Я получаю «Несоответствие количества параметров». ошибка в строке 78 Massive.cs

Все работает нормально, если я передаю только один динамический объект за раз, ошибка возникает только при попытке передать список. Основываясь на документации на GitHub, я думал, что это поддерживается, и это спасет всех дочерних элементов за одну транзакцию.

Ответ №1:

Для сохранения используется массив параметров, а не список.

 people.Save(children.ToArray());
  

Комментарии:

1. В примере документации Роба Конери, кстати, тоже есть такая проблема.