Вопрос

У меня есть проект с огромным уровнем доступа к данным, использующий LinqToSql практически для всего, что касается наших баз данных.Мне нужно было создать вспомогательный класс, который связывает некоторые распространенные операции crud с объектами CLSA с объектами LinqToSql.Все работало гладко, пока мне не понадобилось выполнить усечение таблицы, и все, что у меня было, - это методы “удалить”.

О-о.Быстрый поиск показывает, что некоторые люди используют YourContext.ExecuteCommand(), что приятно и все такое, но в наши дни я стараюсь максимально использовать “t-sql-less”.

Существует ли LINQ-способ выполнить обрезать на столе?Или я просто невежественный?

Это было полезно?

Решение

Это невозможно без выполнения пользовательского запроса T-SQL.Выполнение .Послесловия Delete() и SubmitChanges, как вы, вероятно, уже знаете, приведут к оператору DELETE .

Конечно, вы могли бы создать хранимую процедуру, которая усекает таблицу, а затем вызвать процедуру из LINQ, но, я полагаю, это не совсем то, что вы ищете.

Другие советы

Вы можете сделать что-то вроде этого:

yourDataContext.ExecuteCommand("TRUNCATE TABLE YourTable");
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top