Domanda

Ho letto che il nuovo Entity Framework includerà un metodo per eliminare più voci (LINQ to SQL ha DeleteAllOnSubmit ()), ma non riesco a trovare la funzione / metodo per farlo.

E 'questo in Beta 2 o devo fare il mio?

UPDATE:

Questo è quello che sto usando ora:

    public void DeleteObjects(IEnumerable<object> objects)
    {
        foreach (object o in objects)
        {
            DeleteObject(o);
        }
        SaveChanges();
    }
È stato utile?

Soluzione

EF 4 consente di eseguire istruzioni TSQL contro un contesto oggetto:

   using (var context = new EntityFrameworkExampleEntities())
    {       
     var count = 
         context.ExecuteStoreCommand(@"DELETE FROM Companies WHERE [CompanyID]=4");            
    }

Si veda il seguente blog per i dettagli.

http://blogs.microsoft.co.il/blogs/gilf/archive/2009/11/25/execute-t-sql-statements-in-entity-framework-4.aspx

Altri suggerimenti

So che questo è in ritardo, ma ho trovato questo post ed ho trovato una soluzione più semplice, che non è stato pubblicato. È possibile impostare OnDelete a cascata nelle proprietà dell'Associazione. In VS2012 aprire il file edmx. Clicca sul associazione e troverete l'OnDelete nella scheda Proprietà. Quindi è possibile utilizzare il metodo Remove () senza trigger o qualsiasi altro trattamento speciale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top