Bonjour a tous ,
SVP , y a t-il un moyen de faire ca en LinqtoEntities ?
merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 UPDATE Employees WITH (ROWLOCK) SET Title='Test'
Bonjour a tous ,
SVP , y a t-il un moyen de faire ca en LinqtoEntities ?
merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 UPDATE Employees WITH (ROWLOCK) SET Title='Test'
Bonjour,
Je suis dans le même cas de figure. Avez-vous trouvé une solution ?
Merci d'avance
Créez la procédure stockée correspondante et appelez là avec LINQ...
Utiliser LINQ (SQL ou ENTITIES) est une catastrophe pour ce genre de requêtes: en effet vous seriez obligé de charger tout vos utilisateurs.... puis un à un modifier leur titre et enfin faire un submit changes qui fera autant d'UPDATE que d'utilisateurs...
Tu n'est pas obliger de créer une procédure stockée et faire l'importation de cela :
tu peux passer par ça :
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 context.ExecuteStoreQuery<Employee>("UPDATE Employees WITH (ROWLOCK) SET Title='Test'");
ou
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 context.ExecuteStoreQuery<Employee>("UPDATE Employees WITH (ROWLOCK) SET Title='Test'");
Bon je sais à l'avance que la création d'une procédure stockée est souhaitable mais des fois les DBA ne veulent pas qu'on leur donne des décisions comme :
Certains DBA considèrent cela comme un ordreJe veux que tu me fasses une procédure qui m'exécute ça et ça.![]()
Le choix est dur à faire entre les deux en effettu peux passer par ça :
Code C# :
context.ExecuteStoreQuery<Employee>("UPDATE Employees WITH (ROWLOCK) SET Title='Test'");
ou
Code C# :
context.ExecuteStoreQuery<Employee>("UPDATE Employees WITH (ROWLOCK) SET Title='Test'");![]()
Nom de Dieu, ils'agit de la même requête
La deuxième devait être :
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 context.ExecuteStoreQuery<Employee>("UPDATE Employees WITH (ROWLOCK) SET Title= @p0", new SqlParameter { ParameterName = "p0", Value = "Test" });
ça montre la possibilité d'utiliser les SqlParameter et se prémunir de l'injection SQL.
8 fois sur 10 il n'y a pas de DBA... c'est aussi le problème on est souvent à l'encontre de la solution idéale basée sur l'approche de base de données massives.
bonjour a tous,
pour mon cas j'ai pas trouvé de solution sur Entity Framework et j'ai utilisé les procédures stockées
L'utilisation d'une procedure stockée est un best-practice et il doit toujours être recommandé quand l'occasion se présente.
vous avez raison certains DBA n'adorent pas qu'on leur donne des ordres mais il suffit de leur donnée l'impression que sans eux, vous êtes bloqués que vous les suppliez, avec des formule du genre pourrez-vous, s'il vous plaît ... ca devrait marcher.
Partager