2014-01-14 3 views
2

Поскольку мне нужно работать с C# и MySQL, я недавно установил linq2db через его пакет NuGet. После установки я узнал, что он пришел с очень сладкой особенностью, которая не указана в docs: набор шаблонов T4 для автоматического создания класса DB и POCOs таблиц! (WOW!)linq2db: не может генерировать POCOs для таблиц

Так что я решил запустить T4S вместо записывать свои Pocos сам, но здесь идет неправильно части: список таблиц для БД не найден, таким образом, создается только класс дб.

+0

Немного не по теме, но, возможно, также интересно для других, ищущих информацию о шаблонах linq2db: [ReadMe.LinqToDB.md] (https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB. md) – CodeFox

ответ

1

Следующее демонстрационный проект генерирует таблицы для MySql https://github.com/linq2db/examples/tree/master/MySql/GetStarted/DataModels

+0

... который делает именно то, что я делаю. Пройдя через отладчик, я обнаружил, что проблема заключается в том, что при запуске LoadMySqlMetadata() он получает информацию о схеме, но не таблицу. Может быть, что-то с привилегиями пользователя db? Я все равно root – balanza

+0

Я не знаю mysql, но в SQL Server администратор машины автоматически не дает вам роль системного администратора в SQL Server. Что произойдет, если вы выполните запрос LoadMySqlMetadata вручную? – FuleSnabel

1

Что касается автогенерируемых классов.

Вы уверены что вы завершили шаг 2? Это относится к модификации линии после окончания комментариев (после описания шага 5) от

LoadMySqlMetadata("MyServer", "MyDatabase", "root", "TestPassword"); 

к чему-то разумному. После этого вы получите «суб-файл» CopyMeMysql.tt (в VS, щелкните значок расширения слева от файла в проекте) под названием CopyMeMysql.generated.cs.

Смежные вопросы