2013-02-11 15 views
14

Nie mogę znaleźć odpowiednika w Nancy dla System.Web.HttpContext.Current.Server.MapPath() w ramach Nancy.Nancy: czy istnieje odpowiednik Server.MapPath ("~ /")?

Po prostu chcę załadować plik tekstowy w odniesieniu do usługi aplikacji.

widzę to w zespole

using Nancy; 
using System; 

namespace Nancy.Hosting.Self 
{ 
    public class FileSystemRootPathProvider : IRootPathProvider, IHideObjectMembers 
    { 
     public FileSystemRootPathProvider(); 

     public string GetRootPath(); 
    } 
} 

nie jestem pewny jak używać.

aktualizacja: Właśnie zorientowałem się, że wszystko, co muszę załadować, może być odczytane/zapisane z katalogu bin/relase /. Czy jest to założony sposób na zrobienie tego w środowisku Nancy Self Hosting? Myślę, że to miałoby sens.

Odpowiedz

10

Można wziąć zależność od IRootPathProvider i używać, aby zadzwonić GetRootPath() które dadzą Ci korzeń aplikacji i można dodać stamtąd (polecam przy użyciu Path.Combine)

+0

Zawsze używam ścieżki. połączyć. wystarczył jeden projekt dotyczący jakości produkcji, aby nigdy nie łączyć ręcznie ciągów ścieżek =) – FlavorScape

+0

czy należy wprowadzić IHideObjectMembers? – Cynede

+0

Pomyślałem, że to tylko dla intellisense/visual studio, więc to zależy od ciebie. To po prostu ukrywa podstawowe funkcje do uzupełniania kodu. – FlavorScape