Ich muss Server.MapPath()
verwenden, um einen Dateipfad zu kombinieren, den ich im web.config
Speichere.
Da sich Server.MapPath()
jedoch auf den aktuellen HTTP-Kontext stützt (glaube ich), kann ich dies nicht tun. Beim Versuch, die Methode zu verwenden, wird die folgende Ausnahme angezeigt, obwohl sie "verfügbar" ist:
Der Serverbetrieb ist in diesem Zusammenhang nicht verfügbar.
Gibt es eine andere Methode, die ein relatives Webstammverzeichnis wie ~/App_Data/
Dem vollständigen physischen Pfad wie C:\inetpub\wwwroot\project\App_data\
Zuordnen kann?
Sie könnten versuchen System.Web.Hosting.HostingEnvironment.MapPath () .
Kein HttpContext erforderlich.
Verwenden AppDomain.CurrentDomain.BaseDirectory
weil Context
null zurückgeben könnte !!
Verwenden Sie in Global.asax den Kontext :
context.Server.mappath ()
Im Kontext können Sie auch auf die Sitzungssammlung, das Anforderungsobjekt und das Antwortobjekt zugreifen. Sehr nützlich, wenn Sie beispielsweise Fehler protokollieren möchten