2009-01-15 9 views
2

J'utilise LINQ To SQL pour effectuer une insertion via db.table.InsertOnSubmit(). Je me demande s'il y a un moyen de reproduire la version T-SQL de la 'où n'existe pas (sélectionnez etc etc) début insérer dans etc etc fin' comme une seule requête? Merci, MartinLINQ to SQL Insert

+0

VB.NET, C#, quoi? – AnthonyWJones

+0

Peut-être une description plus arrondie de votre T-SQL (comme un morceau réel de code T-SQL) permettrait également d'améliorer cette question – AnthonyWJones

+0

Expliquer quelle est la tâche que vous essayez d'accomplir, pourrait vous donner de meilleures réponses. – Aleris

Répondre

3

LINQ a une méthode d'extension appelée Contient qui permet cette fonctionnalité. Cela peut être vu dans l'exemple suivant:

NorthwindDataContext dc = new NorthwindDataContext(); 
dc.Log = Console.Out; 
var query = 
    from c in dc.Customers 
    where !(from o in dc.Orders 
      select o.CustomerID) 
      .Contains(c.CustomerID) 
    select c; 
foreach (var c in query) Console.WriteLine(c); 

Notez la négation sur la clause where! Cet exemple provient du site Web here.