如何在 Azure Web 作业中更新 json 文件?
How to update a json file in azure web job?
我在我的网站下创建了一个 Azure 网络作业,每周 运行 一个应用程序。
我的应用程序从 json 文件加载其最后 运行ning 时间,以便 select 在其最后一次执行后修改数据。如果应用程序成功完成其作业,它会更新 json 文件中的值。为了更新文件,我使用以下代码:
public static void SaveConfig(Config cnf)
{
var path = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "/config.json";
File.WriteAllText(path, JsonConvert.SerializeObject(cnf, Formatting.Indented));
}
问题是在 Azure 网络作业上它 运行 完美无误,但它没有按预期更新我的 json 文件。我必须在这里注意到 config.json 作为 Web 作业的一部分部署到 Azure,我可以通过 ftp 或路径 App_Data/jobs/triggered/MyApp
下的应用程序服务编辑器找到它
WebJobs 在 运行 之前将影子复制到临时位置,因此如果您尝试修改属于您部署的一部分的文件,您只是在修改临时文件。通常,不建议编写修改自身文件的 WebJob。如果您的目标是拥有一个持久性数据文件,请尝试将其保存在 %WEBJOBS_DATA_PATH% 下,这将被持久化。
我在我的网站下创建了一个 Azure 网络作业,每周 运行 一个应用程序。
我的应用程序从 json 文件加载其最后 运行ning 时间,以便 select 在其最后一次执行后修改数据。如果应用程序成功完成其作业,它会更新 json 文件中的值。为了更新文件,我使用以下代码:
public static void SaveConfig(Config cnf)
{
var path = Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "/config.json";
File.WriteAllText(path, JsonConvert.SerializeObject(cnf, Formatting.Indented));
}
问题是在 Azure 网络作业上它 运行 完美无误,但它没有按预期更新我的 json 文件。我必须在这里注意到 config.json 作为 Web 作业的一部分部署到 Azure,我可以通过 ftp 或路径 App_Data/jobs/triggered/MyApp
下的应用程序服务编辑器找到它WebJobs 在 运行 之前将影子复制到临时位置,因此如果您尝试修改属于您部署的一部分的文件,您只是在修改临时文件。通常,不建议编写修改自身文件的 WebJob。如果您的目标是拥有一个持久性数据文件,请尝试将其保存在 %WEBJOBS_DATA_PATH% 下,这将被持久化。