发布在Window环境上的微服务须要部署在Linux环境上,本觉得没有什么问题,结果由于一处读取文件路径的缘由报错了,在此记录一下两个问题:1.C#如何判断当前运行环境是什么操做系统;2.C#读取文件传输路径是什么?sql
1、判断当前操做系统:微服务
var env = Environment.GetEnvironmentVariables(); //获取当前环境变量 var os = Convert.ToString(env["OS"]); //获取当前操做系统 var dr = Convert.ToString(env["SystemDrive"]); //获取当前系统驱动盘
其中运行在Windows系统下os的值是"Windows_NT"。spa
2、C#读取文件传输路径:操作系统
string fileName = dr + @"../../../ExecuteSql/"; //root/ExcuteSql文件夹下的文件 var filePath = fileName + usData.File; //文件名 string sql = System.IO.File.ReadAllText(filePath); //读取文件
注意两点:1.斜杠是"/";2.路径和文件名必定注意大小写,由于Linux是区分大小写的。code