У нас есть таблица с очень большим столом с столбцами 500 (я знаю, что кто-то это делает!)
Многие из этих столбцов действительно внешние ключи для других таблиц.
У нас также есть требование загружать некоторые связанные таблицы.
Есть ли какой-либо путь в Linq to SQL или Dynamic Linq, чтобы указать, какие столбцы будут извлекаться из базы данных? Я ищу оператор linq, который фактически использовал этот эффект для сгенерированного оператора SQL:
SELECT Id, Name FROM Book
Когда мы запускаем запрос reguar, созданный EF, SQL Server выдает ошибку, в которой вы достигли максимального количества столбцов, которые могут быть выбраны в запросе!!!
Любая помощь очень ценится!
Да, именно так, таблица имеет 500 столбцов и сама ссылается на наш инструмент, автоматически загружает отношения первого уровня, и это приводит к ограничению SQL по количеству столбцов, которые могут быть запрошены.
Я надеялся, что могу установить только загрузку ограниченных столбцов связанных объектов, таких как Id и Name (которые используются в пользовательском интерфейсе для просмотра записи пользователю)
Я полагаю, что другой вариант - контролировать, какие столбцы FK должны быть загружены. Однако это все еще остается проблемой для таблиц с бинарным или ntext столбцом, которые вы можете не захотеть загружать все время.
Есть ли способ связать несколько моделей (Entities) с одной и той же таблицей в Code First? Мы пытались сделать это, я думаю, что усилия потерпели неудачу.