Problem: Webverweis hinzufügen/ DiscoCodeGenerator

Hallo erstmal,

ich habe einen ASP-Webdienst (C#) und anschließend eine Windows-Anwendung (C#) mit dem Microsoft Visual Studio .NET Professional 2003 erstellt. Der Windows-Anwendung möchte ich einen Webverweis hinzufügen. Scheint auch zu funktionieren. Jedoch werden beim „Dataset hinzufügen“ keine typisierten Datasets angezeigt (Meldung: keine Datasets in Projekt). Dann ist mir in der Aufgabenliste folgendes aufgefallen:

1 Buildfehler
Beschreibung:
Warnung für benutzerdefiniertes Tool: DiscoCodeGenerator kann den Codegenerator nicht initialisieren. Es wurde kein Code generiert.
Datei:
C:…\WebService1\WindowsApplication1\WebReferences\localhost\References.map

Das gleiche habe ich auf einem anderen System nachgestellt und erhielt die gleiche Fehlermeldung. Woran kann das liegen?

Dankeschön und Gruß
Ulrich

hallo ulrich,

hast du denn in deinem projekt eine webreference???(verweis)

mich verwirrt ein bisschen was du mit „dataset hinzufügen“ in verbindung mit webservice meinst…??

ansonsten bitte code mit webservice posten, und code deiner windows-applikation mit der du auf den webservice zugreifen willst

gruß

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Rasta

hast du denn in deinem projekt eine webreference???(verweis)

Der WindowsApplication füge ich eine Webreference zu. Der Dienst (Service1) wird auch gefunden. Aber dann taucht die Fehlermeldung auf.

mich verwirrt ein bisschen was du mit „dataset hinzufügen“ in
verbindung mit webservice meinst…??

Anschließend möchte ich der WindowsApplication (Form1) ein Dataset hinzufügen (Toolbox/Daten). Das Menü „Dataset hinzufügen“ öffnet sich aber ohne die Auflistung des Datasets des WebServices (WebService8 -> Service1.asmx).

ansonsten bitte code mit webservice posten, und code deiner
windows-applikation mit der du auf den webservice zugreifen
willst

gruß

rasta

Den Code der Windows-Application (WindowsApplication8) habe ich nicht angefügt, da ich diese neu erstellt habe um danach direkt den Webverweis hinzuzufügen. Am Code habe ich also noch nichts geändert. Es ist der StandardCode. Die Funktion „Webverweis hinzufügen“ erstellt wahrscheinlich u.a. die Datei Reference.map. Diese sollte einen Verweis auf den Dataset (DataSet1.xsd) enthalten. Aber genau dieser fehlt.

Reference.map:

<?xml version="1.0" encoding="utf-8"?>

Service1.asmx.cs:

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Diagnostics;
using System.Web;
using System.Web.Services;

namespace WebService8
{
///
/// Zusammenfassung für Service1.
///
public class Service1 : System.Web.Services.WebService
{
public Service1()
{
//CODEGEN: Dieser Aufruf ist für den ASP.NET-Webdienst-Designer erforderlich.
InitializeComponent();
}

private System.Data.OleDb.OleDbCommand oleDbSelectCommand1;
private System.Data.OleDb.OleDbCommand oleDbInsertCommand1;
private System.Data.OleDb.OleDbConnection oleDbConnection1;
private System.Data.OleDb.OleDbDataAdapter oleDbDataAdapter1;

#region Vom Komponenten-Designer generierter Code

//Erforderlich für den Webdienst-Designer
private IContainer components = null;

///
/// Erforderliche Methode für die Designerunterstützung.
/// Der Inhalt der Methode darf nicht mit dem Code-Editor geändert werden.
///
private void InitializeComponent()
{
this.oleDbSelectCommand1 = new System.Data.OleDb.OleDbCommand();
this.oleDbInsertCommand1 = new System.Data.OleDb.OleDbCommand();
this.oleDbConnection1 = new System.Data.OleDb.OleDbConnection();
this.oleDbDataAdapter1 = new System.Data.OleDb.OleDbDataAdapter();
//
// oleDbSelectCommand1
//
this.oleDbSelectCommand1.CommandText = „SELECT TARIFF_A FROM TARIFF“;
this.oleDbSelectCommand1.Connection = this.oleDbConnection1;
//
// oleDbInsertCommand1
//
this.oleDbInsertCommand1.Connection = this.oleDbConnection1;
//
// oleDbConnection1
//
this.oleDbConnection1.ConnectionString = „Provider=„IBMDADB2.1“;Mode=ReadWrite;User ID=administrator;Data Source=SCP11_TE:stuck_out_tongue_winking_eye:“ +
„ersist Security Info=True:stuck_out_tongue_winking_eye:assword=geheim“;
//
// oleDbDataAdapter1
//
this.oleDbDataAdapter1.InsertCommand = this.oleDbInsertCommand1;
this.oleDbDataAdapter1.SelectCommand = this.oleDbSelectCommand1;
this.oleDbDataAdapter1.TableMappings.AddRange(new System.Data.Common.DataTableMapping[] {
new System.Data.Common.DataTableMapping(„Table“, „TARIFF“, new System.Data.Common.DataColumnMapping[] {
new System.Data.Common.DataColumnMapping(„TARIFF_A“, „TARIFF_A“)})});

}

///
/// Die verwendeten Ressourcen bereinigen.
///
protected override void Dispose( bool disposing )
{
if(disposing && components != null)
{
components.Dispose();
}
base.Dispose(disposing);
}

#endregion

// WEBDIENSTBEISPIEL
// Der HelloWorld()-Beispieldienst gibt die Zeichenfolge Hello World zurück.
// Entfernen Sie den Kommentar in folgenden Zeilen. Speichern und erstellen Sie anschließend das Projekt.
// Drücken Sie F5, um den Webdienst zu testen.

// [WebMethod]
// public string HelloWorld()
// {
// return „Hello World“;
// }
}
}

hallo ulrich,

eine webservice-methode sieht bei mir so aus(vb.net):

 Public Function getGermanCitys(ByVal Vorwahl As String) As DataSet

nachdem ich die referenz in meinem projekt gesetzt habe, kann ich diese instanzieren:

 Public strGetOrtswahlen As New service1.ITServiceWebservices()

sofern „ds= new dataset“ ist… kann ich den webservice folgendermaßen abrufen:

DS = strGetOrtswahlen.getGermanCitys(TextBox2.Text)

zum testen die adresse des webservices

http://www.itatservice.de/itatservice/itatservice1.asmx

sollte es das nicht gewesen sein, gib mal die fehlermeldung bei google-groups an - wirst ja nicht der erste mit diesem fehler sein…

hoffe es hilft

gruß

rasta

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]