Как загрузить файлы в другое место службы wcf?

У меня 1 asp.net MVC проект, который имеет папку, как показано ниже:

D:MymvcProjectMyAppFileUploadMyFilesCsv161228122740abc.txt

Folder = MymvcProject
MyApp =  Name of Mvc project
FileUpload = Folder inside mvc project
MyFiles = Folder inside FileUpload Folder
20161228122740 = Timestamp Folder inside csv folder which contains csv files

Теперь я хочу прочитать эти csv-файлы из моего проекта wcf, как показано ниже :

string path = Path.Combine(HostingEnvironment.MapPath("~/FileUpload/MyFiles/Csv/"), "20161228122740", "Abc.txt") 

Это пытается найти в моем проекте wcf, но мой csv находится в папке проекта mvc, поэтому я получаю ошибку Could not find a part of the path.

Теперь я могу жесткий путь кода, но проблема будет, когда мой веб-сайт публикации и положить его на другой диск, как например:F диск, то как моя служба wcf будет найти, что csv-файлы и теперь диск были изменения.

Кто-нибудь может мне подсказать, как решить эту проблему??

1 ответ

  1. можно добавить значение ключа в веб-конфигурации, как это:

    <add key="FilePath" value="D:\MymvcProject\MyApp\FileUpload\MyFiles\Csv\"/>
    

    затем используйте его так в коде:

    string path = Path.Combine(WebConfigurationManager.AppSettings["FilePath"], "20161228122740", "Abc.txt")
    

    лично я предпочитаю, чтобы болеть это в моей базе данных.