Pregunta

Tengo un proyecto con una capa de acceso a datos formidable usando LinqtoSQL para casi cualquier cosa que toque nuestras bases de datos. Necesitaba construir una clase auxiliar que conectara algunas operaciones comunes de objetos CLSA a los de LinqToSql. Todo ha estado funcionando a la perfección hasta que tuve que hacer un truncamiento en una mesa y todo lo que tenía era & # 8220; eliminar & # 8221; métodos.

Uh-oh. Una búsqueda rápida revela que algunas personas están usando YourContext.ExecuteCommand (), lo cual es bueno y todo, pero estoy tratando de ir a & # 8220; t-sql-less & # 8221; tanto como sea posible en estos días.

¿Hay una forma LINQ de realizar un truncar en una mesa ? ¿O solo estoy despistado ?

¿Fue útil?

Solución

Esto no es posible sin hacer una consulta T-SQL personalizada. Hacer una contraseña posterior .Delete () y SubmitChanges, como probablemente ya sabrás, daría como resultado una declaración DELETE.

Por supuesto, puede crear un procedimiento almacenado que trunca la tabla y luego llamar al procedimiento desde LINQ, pero eso no es realmente lo que está buscando, creo.

Otros consejos

Puedes hacer algo como esto:

yourDataContext.ExecuteCommand("TRUNCATE TABLE YourTable");
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top