C# 正在读取服务器上的设置文件

C# 正在读取服务器上的设置文件,c#,json,web-services,static-files,C#,Json,Web Services,Static Files,我正在编写一个web服务,它当前需要从服务器上的json文件读取一些设置 string allSettingsTxt = File.ReadAllText(settingsPath); List<MySetting> list = JsonConvert.DeserializeObject<List<MySetting>(allSettingsTxt); 但这条路径在实际部署中无法解决,我相信它必须类似于http://servername/settings/set

我正在编写一个web服务,它当前需要从服务器上的json文件读取一些设置

string allSettingsTxt = File.ReadAllText(settingsPath);
List<MySetting> list = JsonConvert.DeserializeObject<List<MySetting>(allSettingsTxt);
但这条路径在实际部署中无法解决,我相信它必须类似于
http://servername/settings/setting.json

  • 在哪里可以存储这样的json文件
  • 我应该使用什么路径访问它

  • 我不完全确定我是否正确理解了你想要实现的目标

    我假设您希望获取设置文件的路径,该路径与可执行文件相关

    这是我在自己的代码中经常做的:

    var configFile = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "config.xml");
    
    在本例中,config.xml应与.EXE位于同一目录中

    所以这就是

    var settingPath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"..\MyCurrentDir\setting.json");
    
    就你而言


    另请参阅以获取一些解释。

    感谢您的回复!一个问题是,如何以编程方式将设置文件放到正在执行程序集的文件夹中。GetExecutionGassembly给了我这个路径:“C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319\\ASP.NET临时文件\\root\\xxxxx\\xxxxxx\\assembly\\dl3\\xxxxxxx\\xxxxxxx\\Setting.json”好吧,好吧,你的情况下没有自己的EXE。对不起,我习惯于在服务中使用自托管。您应该在上述文章中尝试其他解决方案。可能是HttpRuntime.AppDomainAppPath.Thank,AppDomainAppPath和Server.MapPath都提供了指向我的SPA UX react文件夹的路径,我需要指向我的web服务文件夹的位置。
    var settingPath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), @"..\MyCurrentDir\setting.json");