Я использовал LINQPad для прототипирования некоторых запросов к базе данных SQL 2000 и думал, что, поскольку я использую LINQPad, встроенный в поставщик LINQ to SQL, я смогу сгенерировать такой же контекст типизированных данных в проекте Visual Studio.
Я добавил новое подключение к данным в Visual Studio Server Explorer в VS2010. Это заставило меня использовать «Microsoft SQL Server (OLE DB)», потому что «Microsoft SQL Server (SqlClient)» работает только с SQL 2005 и выше. Затем я попытался перетащить таблицы на свою поверхность dbml, но получил следующее сообщение:
Выбранные объекты используют неподдерживаемого поставщика данных.
Я нашел очень хитрый обходной путь, скопировав DLL TypedDataContext, которую сам LINQPad создает в папку Temp, а также сослался на сам LINQPad.exe (который необходим для базового класса контекста типизированных данных). Но на самом деле я бы предпочел, чтобы LINQ to SQL работал правильно в моем проекте.
Я что-то делаю неправильно или глупо (я впервые использую LINQ to SQL)? Есть ли способ создать те же классы типизированных данных, что и LINQPad? Этот ответ указывает на то, что это должно быть возможно.