Lightswitch + WCF RIA + MySQL разъем / Сеть почти работает, но не совсем - PullRequest
0 голосов
/ 08 августа 2011

Я пытаюсь подключиться к существующей базе данных MySQL из Lightswitch RTM через службу WCF RIA.

Я сделал следующее:

  • Установите MySQL коннектор версия 6.3.7 из зоны разработки MySQL на моей машине разработки.Последняя версия 6.4.3, похоже, не работает и выдает ошибку «Несинхронизировано с сервером» при установлении соединения из Visual Studio.
  • Проверьте соединение из Visual Studio, создав новое соединение для передачи данных,выбор базы данных MySQL в качестве поставщика и предоставление IP-адреса сервера MySQL, имени пользователя и пароля.

Это работает, и БД отображается правильно.

Затем я следовал инструкциям здесь , чтобы использовать создание службы RIA WCF:

  • Добавить новый проект в решение на основе шаблона Библиотека классов служб RIA WCF .
  • Добавить модель данных сущности ADO.NET ввеб-проект WCF RIA и с помощью мастера подключите его к базе данных MySQL.Сгенерированная строка подключения: metadata=res://*/Model.csdl|res://*/Model.ssdl|res://*/Model.msl;provider=MySql.Data.MySqlClient;provider connection string="server=10.192.xx.yy;User Id=xxxxxxx;database=projet;password=xxxxxxxxxx;Persist Security Info=True".

  • Добавьте доменную службу к веб-проекту WCF RIA.

Это работает правильно.Диаграмма сущностей показывает три выбранные таблицы базы данных со всеми полями.

Затем я подключил службу RIA WCF к коммутатору освещения, следуя этому уроку здесь :

  • В проекте Lightswitch создайте новый источник данных и присоедините его к службе RIA WCF
  • Добавьте ссылку на веб-проект WCF RIA и выберите необходимые данныеисходные объекты.Это работает, и объекты источника данных правильно импортируются.
  • Наконец, скопируйте строку подключения из файла App.config веб-проекта WCF RIA в файл web.config в сгенерированном сервером проекте проекта Lightswitch.Строка:
    <add name="b70821ef-..." connectionString="metadata=res://<em>/Model.csdl|res://</em>/Model.ssdl|res://*/Model.msl;provider=MySql.Data.MySqlClient;provider connection string="server=10.192.xx.yy;User Id=xxxxxxx;database=projet;password=xxxxxxx;Persist Security Info=True"" providerName="System.Data.EntityClient"/>

Решение может быть построено без ошибок.Однако при запуске приложения Lightswitch на экране сведений для таблицы MySQL отображается только красный крестик и указывается, что он не может загрузить данные.

Я подозреваю, что строка подключения, вставленная в web.config, неверна.

Что является неправильным / отсутствует в вышеупомянутом подходе или как я могу изолировать и отладить проблему?

1 Ответ

1 голос
/ 24 августа 2011

Следуйте этому посту. http://lightswitchhelpwebsite.com/Forum/tabid/63/aft/89/Default.aspx

Для меня это было решение -> см. Последний пункт о конфигурации строки соединения

привет

...