Скажите, у меня есть следующая строка:
c:\testmypath
В C #, если я хочу использовать этот внутренний код без вкладки внутри, я могу сделать следующее:
string t = @"c:\testmypath";
Однако, если я хочу прочитать это из файла конфигурации; скажем appsettings.json
, который выглядит так:
{
"MyPath": "c:\testmypath"
}
Следующий код приводит к отображению вкладки в консоли:
static void Main(string[] args)
{
var path = returnString();
Console.WriteLine(path);
Console.ReadLine();
}
static string returnString()
{
var builder = new ConfigurationBuilder()
.SetBasePath(Directory.GetCurrentDirectory())
.AddJsonFile("appsettings.json");
var configuration = builder.Build();
return configuration["MyPath"];
}
Я могу исправить это, выбрав путь внутри файла конфигурации; например:
{
"MyPath": "c:\\testmypath"
}
К, могу ли я как-нибудь избежать версии с одним слешем? Я пробовал:
return @configuration["MyPath"];
Что, к моему удивлению, компилируется, но никак не влияет. Я также попробовал .ToString()
, хотя я не уверен, почему я думал, что это сработает.