2009-04-16 14 views
1

Ich verwende eine COM-DLL, einen Funktionsaufruf, der ein ADO-RecordSet-Objekt zurückgibt und in meiner C# -Anwendung darauf verweisen möchte.Wie Referenz ADO RecordSet-Objekt in C#?

hinzugefügt hat die Referenz, die msado15 setzen, interop.adodb DLL in dem Verzeichnis ist und Debug-Verzeichnis aufgenommen Montageschlüssel in web.config aber immer noch die folgende Fehlermeldung erhalten:

The type 'ADODB.Recordset' is defined in an assembly that is not referenced. You must add a reference to assembly 'ADODB, Version=7.0.3300.0, Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a'.

Alle Ideen, was das ist richtiger Weg, dies zu tun?

Edit: Welche Baugruppe füge ich zu GAC hinzu? Wo kann ich die ADODB.dll finden?

Added der Verweis auf c: \ program files \ microsoft.net \ primäre Interop assemlies \ adodb.dll und bekam arbeiten sie schließlich

Antwort

1

Versuchen Sie, den Verweis auf ADODB.dll in Ihrem Projekt auf "Copy Local" zu ändern.

0

Die Montage in GAC sein sollte wie der Name schon sagt (der Name hat PublicKeyToken in es).

EDIT: Die Interop-Assembly, für die der Fehler ausgelöst wird, sollte in GAC sein. ODER entfernen Sie die Referenz aus Ihrem Projekt und fügen Sie den Verweis auf die DLL aus dem Verzeichnis bin hinzu.