2012-12-13 21 views
27

Ben VS2012 içinde F5'i kullanıyorum ve ben ExecuteStoreCommand kullanarak bazı tablonun tüm verileri silmek için çalışıyor, böyle bir şey:Entity Framework 5'deki ExecuteStoreCommand yöntemi nerede?

ctx.ExecuteStoreCommand("TRUNCATE TABLE [" + tableName + "]"); 

ama sorun EF beni anlatıyor olup, yöntem ExecuteStoreCommand bulunamadı. Nedenini anlayamıyorum?

Bana nedenini söyler misiniz? Veya tabloyu tüm verilerini kaldıracak bir performans çözümü verin.

+0

Emin misiniz? http://msdn.microsoft.com/en-us/library/system.data.objects.objectcontext.executestorecommand.aspx – tomfanning

+3

@tomfanning, ObjectContext veya DbContext –

+0

Doğru kullanıyor. EF5/6, bunları yayınlamadığınız sürece varsayılan olarak DbContext (POCO) olur. – DFTR

cevap

80

bu deneyin:

ctx.Database.ExecuteSqlCommand 
+1

Bu cevap cevap olarak işaretlenmiş olmalı ... bu mükemmel bir çözüm.1 Senin için oy kullan @Justin Harvey –

+0

kullanıyorum: ctx.Database.ExecuteSqlCommand ("SET IDENTITY_INSERT profile ON") Ama çalışmıyor. .. Özel birincil anahtar eklenemiyor. Bu nasıl yapılır ? –