Announcement

Collapse
No announcement yet.

Selbst definierter Namespace kann nicht gefunden werden.

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Selbst definierter Namespace kann nicht gefunden werden.

    Hallo,

    ich habe folgendes Problem.

    2 Dateien, welche je eine Klasse beinhalten. Nun soll jede Klasse in einen eigenen Namespace. Soweit funktioniert das auch, nur kann ich die Namespaces nicht in anderen Dateien importieren.

    Beispiel:

    Datei classA.vb:
    <br>
    Namespace NamespaceA
    Public Class ClassA
    End Class
    End Namespace
    <br>
    Datei classB.vb:
    <br>
    Imports NamespaceA
    Namespace NamespaceB

    Public Class ClassB

    End Class
    End Namespace
    <br>
    Es erscheint die Fehlermeldung: ....\ClassB.vb(1): Der Namespace oder Typ "NamespaceA" für Imports "NamespaceA" wurde nicht gefunden.

    In #Develop funktioniert das ganze, in VS.NET allerdings nicht...

    Ich hatte mit #Develop einen hierachischen Namespace erstellt, der bringt die gleiche Fehlermeldung in VS.NET. Ich nehme an das Problem ist das gleiche wie bei dem simpleren Beispiel oben..

  • #2
    Ich habe das ganze nun auch in C# ausprobiert, dort funktioniert es wie es soll.

    Ich kann aber nicht das ganze Projekt umschreiben, nur weil VB sich da querstellt. Es muß doch eine Lösung geben..

    Comment


    • #3
      Hallo,
      im Fall von VB.NET hängt das Verhalten davon ab, welcher Wert im Eingabefeld <b>Root namespace</B> im Eigenschaftsdialog des Class Library-Projekts eingetragen wurde. Am Besten wird das Verhalten von VB.NET sichtbar, wenn man die kompilierte Assembly mit dem <b>Object Browser</b> von VS.NET untersucht - dort wird die Syntax angezeigt, die später auch beim Einbinden der Assembly in die Anwendung erwartet wird.
      <br>
      Wenn die Vorbelegung nicht geändert wird, bildet der Projektname (Assembly-Name) den Root namespace, so dass sich die folgende Syntax ergibt:
      <code>
      ClassLibrary1.NamespaceA
      </code>
      Erst dann, wenn im Eigenschaftsdialog die Vorbelegung im Eingabefeld <i>Root namespace</i> entfernt wird (leeres Feld), kann das Programm diese Assembly über <i>Imports NamespaceA</i> einbinden

      Comment


      • #4
        Hallo,
        ich habe in etwa gleiche Problem, fange gerade mit VB.NET an, arbeite ein Buch "Visul Basic .NET, bhv, Ecker/Preiss" durch und hänge dabei an der Erstellung meines ersten 'namespaces'. Das Buch ist sehr detailliert,fast ein Kochbuch. Ich denke nicht dass ich einen Fehler gemacht habe
        Die Fehlermeldung ist wie oben. Ich habe meine DLL testhalber in alle möglichen Verzeichnisse verschoben, aber kein Erfolg.
        Ich habe mit einem normalen Editor angefangen, benutze aber inzwischen SharpDevelop als Entwicklungsumgebung, kämpfe aber mangels detaillierter Hilfe sehr mit der Bedienung.
        Ich habe keine Ahnung wo sich das Eingabefeld Root namespace befindet

        Comment

        Working...
        X