Je me demande si quelqu'un peut m'aider à traduire une requête MySQL en une instruction (Db) LINQ.Table croisée/mise à jour d'objet avec (Db) LINQ
J'ai fait un cas de test pour ce que je veux faire, donc les données et la structure sont différent de ce que je veux vraiment faire, mais c'est juste destiné à l'obtenir de travail.
Dans une base de données MySQL Je possède ce tableau:
CREATE TABLE `mytable1`
(
`id` int(11) NOT NULL AUTO_INCREMENT,
`number` int(11) NOT NULL,
`name` varchar(20) COLLATE latin1_general_ci NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci
Ceci est le contenu
id number name
1 10 aaa
2 20 bbb
3 25 cccc
4 30 ddd
5 35 eee
J'utilise DBLinq au sein de C# pour se connecter à ce tableau. Dans le programme C#, j'ai aussi une liste comme ceci:
List<myDataFields> myNewData = new List<myDataFields>();
Avec
public class myDataFields
{
public int number { get; set; }
public string name { get; set; }
}
Contenu de la liste est la suivante:
number name
10 firstName
20 secondName
30 ThirdName
Si le contenu de la liste serait une table dans mysql (table2), je pourrais juste mettre à jour table1 avec cette requête:
update mytable1,mytable2 set mytable1.name=mytable2.name where
mytable1.number=mytable2.number;
(dans la vraie vie, j'ai fait faire correspondre deux colonnes comme une clé)
Le résultat sera
id number name
1 10 firstName
2 20 secondName
3 25 cccc
4 30 ThirdName
5 35 eee
Mais comment puis-je mettre à jour table1, en utilisant DBLinq et la liste dans les C#?