2009-08-01 4 views
2

Ich habe eine Webanwendung erstellt, die die J # -Bibliotheken verwendet, die jedoch in meiner CPU funktioniert, wenn ich sie auf meinem freigegebenen Server bereitstelle. Ich erhalte eine Fehlermeldung: Parser Fehlermeldung: Datei oder Assembly konnte nicht geladen werden 'vjslib, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a' oder eine seiner Abhängigkeiten. Die angegebene Datei wurde vom System nicht gefunden.Bereitstellung von Assembly normalerweise in der GAC mit meinem Projekt?

Also im Grunde hat der Server Visual j # nicht installiert. Das Problem ist, dass sie es nicht installieren, da es sich um einen freigegebenen Server handelt.

Gibt es eine Möglichkeit, die J # -Assemblys mit meinem Projekt bereitzustellen, so dass es auf dem freigegebenen Server funktioniert, ohne dass es im GAC registriert wird?

Danke für Ihre Hilfe !!

Antwort

1

Einfachste Lösung: Versuchen Sie, die Baugruppen, die Ihre Anwendung benötigt, in den gleichen Ordner zu kopieren, in dem sich Ihre Anwendung befindet.

Der folgende MSDN-Artikel erläutert How the Runtime Locates Assemblies.

Außerdem können Sie weitere Optionen (einschließlich Kopieren aller J # verwandten DLLs in einen Unterordner des Anwendungsordners, wenn erforderlich) in dem folgenden Link finden, wenn die Laufzeit nicht die Assembly im GAC finden: Locating the Assembly through Codebases or Probing

+0

und alles, was Klicken Sie im Projektmappen-Explorer unter Verweise auf die fehlerhafte Assembly, und legen Sie die Eigenschaft "Copy to Local" auf true fest. Die Assembly wird in das Verzeichnis Ihrer EXE-Ausgabe kopiert, und Sie können sie einfach sammeln und bereitstellen jene. – nos

0

Ohne etwas über J zu wissen # Ich kann nur vorschlagen, dass Sie versuchen, einfach die benötigten Bibliotheken zusammen mit Ihrem Programm zu verteilen (legen Sie sie in das gleiche Verzeichnis), ich glaube, wenn es die Bibliothek nicht finden kann im aktuellen Verzeichnis suchen.