Ошибка получения синтаксиса Linq - PullRequest
0 голосов
/ 27 октября 2011

Я хочу использовать команду truncate table, найти ее и найти решение, подобное этому

context.Entities.DeleteAllOnSubmit(dc.Entities);
and 
context.ExecuteCommand("DELETE FROM EntityName");
or
context.ExecuteCommand("TRUNCATE TABLE EntityName");

Но я не получил эти методы в LINQ.что такое контекст здесь?

в SQL мы используем этот синтаксис

Truncate table tablename

Ответы [ 2 ]

1 голос
/ 27 октября 2011

context будет экземпляром соответствующего класса, специфичного для базы данных, который расширяется DataContext.Разработчик LINQ to SQL создаст этот класс для вас.

Я настоятельно рекомендую вам прочитать учебник по LINQ to SQL, прежде чем пытаться написать какой-либо код - он объяснит контекст данных и его цель чтобы вы могли правильно использовать LINQ to SQL.

EDIT: Хорошо, вы теперь объяснили, что используете Entity Framework, а не LINQ to SQL (согласно вашим тегам).Это объясняет, почему вы не видите методы LINQ to SQL ...

0 голосов
/ 27 октября 2011

Что ж, использование Linq-2-sql для выдачи сырых команд sql в базу данных возможно, но в этом случае linq-2-sql действительно не дает никаких преимуществ.В этом случае вы также можете использовать простой Ado.Net.

В любом случае, если у вас есть реальный текстовый текст linq-2-sql, он покажет вам команду ExecuteCommand, но сначала вам нужно создать свой текстовый текст.

Что-то вроде:

  using (notebookDataContext db = new notebookDataContext())
        { 
           db.ExecuteCommand( commandString, params);
         }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...