Я немного играю с инфраструктурой сущностей 6.1.3 в сочетании с EntityFramework.SQLServerCompact 6.1.3 для SQL Server Compact 4.0. Я получил базу данных с таблицей с именем SingleEntities с несколькими базовыми столбцами. Эта таблица получила 4 строки как testdata. Когда я пытаюсь извлечь все 4 строки со следующим кодом:Sql-запрос, сгенерированный каркасом entity, содержит [dbo] и не возвращает никаких результатов.
var entities = context.SingleEntities.ToList();
Никаких строк не возвращаются и ошибок не отображается. При проверке запроса этого кода создание, я вижу этот вопрос:
SELECT
[Extent1].[Id] AS [Id],
[Extent1].[FirstName] AS [FirstName],
[Extent1].[LastName] AS [LastName],
[Extent1].[BeginDate] AS [BeginDate],
[Extent1].[EndDate] AS [EndDate]
FROM [dbo].[SingleEntities] AS [Extent1]
Когда я запускаю этот запрос непосредственно в базе данных, я получаю эту ошибку:
Error Code: 80040E14 Message : The table name is not valid. [ Token line number (if known) = 7,Token line offset (if known) = 18,Table name = SingleEntities ] Minor Err.: 26100 Source : SQL Server Compact ADO.NET Data Provider Num. Par. : 7 Num. Par. : 18 Err. Par. : SingleEntities
Когда я извлекаю [DBO]. в запросе, запрос дает мне результат, который я хочу.
Как я могу описать структуру сущности, чтобы не добавлять [dbo]. часть запроса? Я пытался сделать это с помощью IDbCommandInterceptor, но я все равно не получил никакого результата.
Вы уверены, что вы ищете вверх данные в правильной базе данных - пожалуйста, поделитесь строкой подключения – ErikEJ
Вы смотрите на проблеме с неправильный угол. Является ли таблица в схеме dbo? –
@ErikEJ Ваш ответ заставил меня снова проверить. Строка подключения действительна для исполняемого файла. Но в моем процессе я перешел от исполняемого к модульному тестированию и забыл, что им требуются собственные настройки app.settings со строками подключения. Так что на самом деле, база данных была пуста в конце концов. – Cornelis