L'utilisation de linq pour générer la mise à jour directe sans sélectionner

G'day tout le monde.

Je suis encore à apprendre LINQ donc pardonnez-moi si c'est naïf. Lorsque vous faites affaire avec SQL directement, vous pouvez générer des commandes de mise à jour avec des conditions, sans exécution d'une instruction select.

Quand je travaille avec linq me semble suivre le modèle de l':

  1. Sélectionner des entités
  2. Modifier les entités
  3. De soumettre les modifications

Ce que je veux faire, c'est une mise à jour directe à l'aide de linq et l'exécution différée. Est-il possible que l'exécution se fait directement en SQL, sans qu'aucune information ne soit transmise au client?

DataContext dc = new DataContext

var q = from product in dc.Products
        where product.Type = 1
        set product.Count = 0

dc.SubmitChanges

Donc, en substance, LINQ a toutes les informations dont il a besoin SANS l'aide d'une sélection pour générer une commande de mise à jour. Il serait exécuter le SQL:

Update Products Set Count = 0 Where Type = 1

Un mot clé comme "set" existent dans LINQ?

  • actuellement accepté réponse est fausse - pouvez-vous sélectionnez le bon?
  • Les réponses ci-dessous ne permettent pas de définir en fonction des mises à jour comme je l'ai décrit, mais ils sont intéressants.
InformationsquelleAutor Spence | 2009-01-14