OVH Cloud OVH Cloud

DAO Recordset et C#

2 réponses
Avatar
jean pierre bassot
Bonjour à tous
Je programme en C# pour accèder à une base Access (en utilisant DAO)
et je ne sais pas accéder au valeur d'un recordset
Pour simplifier je voudrais faire l'équivalent de:
(en VBA)
Sub essai3()
Dim La_B As DAO.Database: Set La_B = CurrentDb
Dim rc As DAO.Recordset: Set rc = La_B.OpenRecordset("QUESTIONS")
rc.MoveFirst: rc.MoveLast
MsgBox Str(rc.RecordCount)

MsgBox Str(rc!IdQuest) 'IdQuest est un champ de la table QUESTIONS

End Sub

en C#
using System;
using System.Collections.Generic;
using DAO;

namespace Essai_base
{
class MainClass
{
public static void Main(string[] args)
{
DAO.DBEngine Acc;Acc=new DAO.DBEngine();
DAO.Database Bs;
Bs=Acc.OpenDatabase(@"I:\ProgC#\Compo_Sujet\Compo_sujet\Compo_Sujet.mdb",false,false,"");
DAO.Recordset Rc;
Rc=Bs.OpenRecordset("QUESTIONS",DAO.RecordsetTypeEnum.dbOpenTable,DAO.RecordsetOptionEnum.dbReadOnly,DAO.RecordsetOptionEnum.dbReadOnly);
Rc.MoveFirst();Rc.MoveLast(0);
Console.WriteLine("Nombre de ligne:{0}",Rc.RecordCount);
Console.WriteLine(Rc!IdQuest);
}
}
}
Evidemment Rc!IdQuest ça ne fonctionne pas en C#, et je coince, c'est
sans doute tout bête une fois qu'on sait. Merci d'avance pour votre aide

--
J.P.B.

2 réponses

Avatar
Sylvain Lafontaine
J'imagine que vous pouvez essayer quelque chose comme rc ("IdQuest") à la
place de rc!IdQuest.

Cependant, je me pose de drôles de question sur votre désir à utiliser DAO
sous C#. Bon enfin, j'imagine que vous savez mieux que moi ce que vous avez
de besoin.

--
Sylvain Lafontaine, ing.
MVP - Technologies Virtual-PC
E-mail: http://cerbermail.com/?QugbLEWINF


"jean pierre bassot" wrote in
message news:
Bonjour à tous
Je programme en C# pour accèder à une base Access (en utilisant DAO)
et je ne sais pas accéder au valeur d'un recordset
Pour simplifier je voudrais faire l'équivalent de:
(en VBA)
Sub essai3()
Dim La_B As DAO.Database: Set La_B = CurrentDb
Dim rc As DAO.Recordset: Set rc = La_B.OpenRecordset("QUESTIONS")
rc.MoveFirst: rc.MoveLast
MsgBox Str(rc.RecordCount)

MsgBox Str(rc!IdQuest) 'IdQuest est un champ de la table QUESTIONS

End Sub

en C#
using System;
using System.Collections.Generic;
using DAO;

namespace Essai_base
{
class MainClass
{
public static void Main(string[] args)
{
DAO.DBEngine Acc;Acc=new DAO.DBEngine();
DAO.Database Bs;
Bs¬c.OpenDatabase(@"I:ProgC#Compo_SujetCompo_sujetCompo_Sujet.mdb",false,false,"");
DAO.Recordset Rc;
Rc=Bs.OpenRecordset("QUESTIONS",DAO.RecordsetTypeEnum.dbOpenTable,DAO.RecordsetOptionEnum.dbReadOnly,DAO.RecordsetOptionEnum.dbReadOnly);
Rc.MoveFirst();Rc.MoveLast(0);
Console.WriteLine("Nombre de ligne:{0}",Rc.RecordCount);
Console.WriteLine(Rc!IdQuest);
}
}
}
Evidemment Rc!IdQuest ça ne fonctionne pas en C#, et je coince, c'est
sans doute tout bête une fois qu'on sait. Merci d'avance pour votre aide

--
J.P.B.



Avatar
jean pierre bassot
On Sun, 18 Jun 2006 20:37:13 -0400, Sylvain Lafontaine wrote:

J'imagine que vous pouvez essayer quelque chose comme rc ("IdQuest") à la
place de rc!IdQuest.


eh oui j'ai essayé beaucoup de choses comme ça.....qui ne marchent pas
Qui connaît la chose qui marche?

--
J.P.B.