C # и DAO. Почему RS.Fields ("ColName") не работает? - PullRequest
1 голос
/ 11 сентября 2009
    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");

Последняя инструкция работает в VBA или VB.NET Я думаю, почему она не работает на C #?

Ответы [ 2 ]

3 голосов
/ 11 сентября 2009

Используйте квадратные скобки, явно укажите имя свойства, которое в данном случае равно Value, и приведите его к строке:


string Val = (string)RS.Fields["ColName"].Value;
2 голосов
/ 11 сентября 2009

try String Val = RS.Fields ["ColName"]; C # использует квадратные скобки для ссылок на коллекции

...