2016-05-23 7 views
0

Ich möchte einen WCF-Dienst aufrufen, der als generische Klasse implementiert ist. Hinweis: [Ich habe absolut keinen Zugriff darauf, seine Klassen zu modifizieren, um sie entweder als COM sichtbar zu machen oder als nicht generische Klasse usw. zu machen].Typbibliotheksexportateur hat einen Typ gefunden, der von einer generischen Klasse abgeleitet ist

Ich habe einen Client schreiben, der diesen WCF-Dienst verbraucht. Ich erhalte Warnung, dass:

„Typ Bibliothek Exporteur Warnung Verarbeitung‚WCFService.MultiService.LokUpServiceClient, WCFService‘. Achtung: Typ Bibliothek Exporteur stieß auf eine Art, die aus einer generischen Klasse abgeleitet und ist nicht markiert als [Classinterface (ClassInterfaceType .None)]. Klassenschnittstellen können für solche Typen nicht verfügbar gemacht werden. Erwägen Sie, den Typ mit [ClassInterface (ClassInterfaceType.None)] zu markieren und eine explizite Schnittstelle als Standardschnittstelle zu COM unter Verwendung des ComDefaultInterface-Attributs "verfügbar zu machen.

Frage: WCF-Client COM sichtbar machen, indem man tadellos WCF Service verbraucht?
Wie Sie diese Warnmeldung loswerden?

+0

Zum Zeitpunkt des Hinzufügens einer Service-Referenz haben Sie versucht ** die Option der Wiederverwendung vorhandener Typen abzuwählen? –

+0

Danke. Es funktioniert. –

+0

@ian_scho: Könnten Sie das eine Antwort geben? –

Antwort

1

Wenn Sie eine Servicereferenz hinzufügen, deaktivieren Sie die Option Vorhandene Typen erneut verwenden.

Reuse types in referenced assemblies

0

+1 auf die akzeptierte Antwort. Ich möchte nur hinzufügen, dass, wenn Sie bereits eine Service-Referenz konfiguriert haben, können Sie die Einstellung Reuse-Typen ... für die Service-Referenz wie folgt ändern:

  • Suchen Sie im Projektmappen-Explorer die Service-Referenz. Es sollte unter Connected Services oder Web Services Abschnitt angezeigt werden.
  • Klicken Sie mit der rechten Maustaste auf die Servicereferenz, und klicken Sie auf Konfigurieren Sie die Servicereferenz. Das Dialogfeld Einstellungen wird angezeigt.
  • Löschen Sie die Wiederverwendungsarten in referenzierten Baugruppen Kontrollkästchen. Klicken Sie auf OK.