C # et DAO. Pourquoi RS.Fields («ColName») ne fonctionne pas?
Question
dao.DBEngine DBE;
dao.Database DB;
dao.Recordset RS;
string DBPath;
DBPath = "C:\\Test\\test.mdb";
DBE = new dao.DBEngine();
DB = DBE.OpenDatabase(DBPath, false, false, "");
RS = DB.OpenRecordset("SELECT * FROM TEST", dao.RecordsetTypeEnum.dbOpenSnapshot, 0, dao.LockTypeEnum.dbOptimistic);
RS.MoveLast(0);
RS.MoveFirst();
String Val = RS.Fields("ColName");
La dernière instruction fonctionne dans VBA ou VB.NET Je pense, pourquoi ça ne marche pas en C #?
La solution
try String Val = RS.Fields [" ColName "]; C # utilise des crochets pour référencer les collections
Autres conseils
Utilisez des crochets, indiquez explicitement le nom de la propriété qui est dans ce cas Valeur et transformez-le en chaîne:
string Val = (string)RS.Fields["ColName"].Value;
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow