VS 2010 - Entity Framework с хранимой процедурой MySql, похоже, не работает - PullRequest
0 голосов
/ 12 октября 2011

Я хочу работать с Entity Framework (файл edmx) и базой данных MySql. Что касается таблиц и представлений, VS 2010 отлично работает, тем не менее, он может хорошо генерировать классы Model, файлы csdl, ssdl и т. Д. Но для хранимых процедур это не работает. Вот что происходит ..

  1. Щелкните правой кнопкой мыши на SP из Браузера моделей, выберите [Добавить импорт функций]. Это открыло диалоговое окно
  2. Заполнены соответствующие значения, такие как, имя импорта функции, имя хранимой процедуры
  3. Нажмите [Получить информацию о столбце]. Это приводит к некоторой сетке, заполненной внизу этой кнопки. В сетке есть столбец с именем [Тип EDM]. В этом столбце отображается [Не поддерживается] по неизвестной причине: (
  4. Теперь нажмите на [Создать новый сложный тип]. Все идет нормально, без ошибок
  5. Теперь нажали кнопку ОК

После выполнения всех вышеперечисленных шагов в коде не создается сложный тип, что является проблемой.

Может кто-нибудь помочь, пожалуйста?

1 Ответ

0 голосов
/ 31 января 2012

Я «решил» это, позволив Entity Framework создать безпараметрическое определение и ассоциации, а затем вручную добавить параметры в xml & Генерируемый файл CS.

      public virtual ObjectResult<Nullable<int>> <stored_procedure>(DateTime date1, DateTime date2)
    {
        ObjectParameter[] parameters = { new ObjectParameter("parametertName1",  date1)
                                              , new ObjectParameter("parametertName1",  date2)
                                              };

        return ((IObjectContextAdapter)this).ObjectContext.ExecuteFunction<Nullable<int>>("stored_procedure", parameters);
    }

также, Отображение полей хранимых процедур MySQL Entity Framework 4.0 объясняет больше

...