Ich habe eine Visual Studio 2008-Lösung, die eine Handvoll von Projekten enthält. Ein Projekt enthält eine WCF Service, die ich bereitstelle. Dieser WCF-Dienst verweist auf Code in einem der anderen Projekte. Dieser Code versucht, eine Datei zu lesen, die sich in einem Ordner im WCF-Projekt befindet. Pseudo-Projektstruktur:C#: Wie kann Server.Mappath eine Datei lesen?
Solution
Project1
myclass.cs
string file = Server.Mappath("");
Project2
filefolder
myfile.txt
Wie lautet die richtige Syntax für den Mappath? Ich habe alle verschiedenen Variationen versucht, wie zum Beispiel:
".filefolder/myfile.txt"
"/filefolder/myfile.txt"
"./filefolder/myfile.txt"
"~/filefolder/myfile.txt"
Keine scheinen die Datei erreichen zu können. Eine Sache, an die ich dachte: Visual Studio 2008 führt das Projekt und WCF in einer eigenen Sandbox in IIS. Könnte das das Problem sein? Würde es funktionieren, wenn es im regulären IIS eingerichtet und bereitgestellt wird?
Odd aufzunehmen, zog ich die Datei, die ich von Project2 in Project1 zugreifen müssen, und es kann nicht finde es immer noch! Ich habe versucht: HttpContext.Current.Server.MapPath ("filefolder/myfile.txt") und HttpContext.Current.Server.MapPath ("/ filefolder/myfile.txt") – Blaze