Majestix Geschrieben 19. Januar 2007 Teilen Geschrieben 19. Januar 2007 Servus Leute mal wieder ne abgedrehte frage, aber vielleicht kann sie mir irgendjemand beantworten. Ich hab in Visual Studio 2003 ein Projekt erstellt mit einer Reference auf eine .dll namens:ICE.PAM.Resources dort drinnen ist eine Klasse Data mit der Methode names: executeBS() enthalten unter dem Namespace PAM die aufgerufen werden kann. (alles Public) also folglich würde ich sie so aufrufen: Pam.data.exectueBS() Jetzt ist folgendes: ich habe zwei Projekte mit 100%ig den gleichen referenzen und den selben imports (unter projekt-> properties -> imports ) in projekt A kann ich folgendermaßen zugreifen: Data.excecuteBS() in projekt B geht dies nicht ! er sagt executeBS ist keine methode von Data (weil er will auf System.Data zugreifen.) das kann ich nur lösen wenn ich oben hinschreibe: import Pam dann geht auch: Data.executeBS() hat einer eine antwort darauf warum er in projekt A ohne import usw. weiß welches Data er nehmen soll ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Mister A Geschrieben 19. Januar 2007 Teilen Geschrieben 19. Januar 2007 welche imports bestehen denn in der klasse wo letzlich der code ateht der auf den "richtigen " Data-Namespace verweist? Dort gibt es die Möglichkeit auch sogenannte Aliase zu verwenden. Siehe hier: Imports-Anweisung Wenn da unterschiede bestehen kann das eine "Data" sich von dem anderen durchaus unterscheiden. Generell ist "Data" allerdings auch eine - eben grad wegen deines problems - sehr.. ja, wie soll man sagen.. diffizile Namensraumbeschreibung... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Code Poet Geschrieben 22. Januar 2007 Teilen Geschrieben 22. Januar 2007 In Delphi war das Schlagwort für solche Probleme "Gültigkeit von Bezeichnern". "Data" ist für einen NameSpace, ein Objekt, eine Klasse oder generell eine schlechte Namenswahl, weil es "für alles und nichts" stehen kann und in .NET erwartungsgemäß natürlich schon existiert. Die DLL ist aber eine .NET-Library oder? Von Dir selbst entwickelt? Dann am besten den "Data"-NameSpace in einen eindeutigeren Namen ändern. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Majestix Geschrieben 22. Januar 2007 Autor Teilen Geschrieben 22. Januar 2007 hi, ersteinmal danke für die antworten. ich möchte eigentlich keine lösung, sondern nur wissen warum das so ist. @misterA in beiden klasse sind genau die selben imports! @CodePoet es ist logisch das er sofern ich nichts importe bei dem wort Data System.Data nimmt. Wenn ich was importiere nimmt er natürlich mein Data. Hier ist nur das Problem das ich in zwei projekten genau das selbe importiere und bei einem weiß er das er Data von mir nehmen soll und beim anderen benutzt er System.Data . warum ? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Code Poet Geschrieben 22. Januar 2007 Teilen Geschrieben 22. Januar 2007 Benutzt Du in der Applikation, die die System.Data... Klasse nimmt vielleicht anderswo diese Klasse? Hast Du keine Möglichkeit diese Namensambiguität zu beseitigen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Majestix Geschrieben 22. Januar 2007 Autor Teilen Geschrieben 22. Januar 2007 nein ich kann die namen nicht ändern. die klasse system.data wird von mir zumindest nicht bewusst benutzt. aber wie bereits erwähnt möchte ich das ganze auch nicht lösen, da bisher alles einwandfrei funktioniert hat. sondern ich würde nur einfach gerne den grund erfahren warum er bei genau den selben imports usw. das einemal weiß wo er kuggen muss und das andere mal nicht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Mister A Geschrieben 22. Januar 2007 Teilen Geschrieben 22. Januar 2007 Sorry, wenn das für mich noch nicht klar ist, aber deswegen nochmal die Nachfrage: Wenn du von "den Imports" sprichst, meinst du dann die von dir anfangs erwähnten Verweise welche man unter "projekt-> properties -> imports" hinzufügt, oder bezog sich deine Antwort auf meinen Post, auch auf die von mir gemeinten import Anweisungen im Kopf des Codefensters? <--- *sich_selbst_verwirr* Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Majestix Geschrieben 22. Januar 2007 Autor Teilen Geschrieben 22. Januar 2007 beide haben sowohl unter properties -> imports als auch oben im code kopf die selben imports. bei dem einen gehts bei dem anderen nicht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Majestix Geschrieben 23. Januar 2007 Autor Teilen Geschrieben 23. Januar 2007 beide haben sowohl unter properties -> imports als auch oben im code kopf die selben imports. bei dem einen gehts bei dem anderen nicht. (edit geht net ) also bei dem, wo es nicht funktioniert, kann ich das ganze lösen indem ich oben in den code kopf: import Pam schreibe. dann funktioniert es in beiden. doch wenn ich das weglasse und die imports, referenzen genauso setzte wie bei dem anderen gehts nicht mehr. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.