get
{
string dirName = System.IO.Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location);
string pathName;
DirectoryInfo d = new DirectoryInfo("TradeBotData");
if (!d.Exists)
{
if (d.Parent.Name.ToString() == "Plugins")
{
d.Create();
return d.FullName;
}
}
else
{
if (d.Parent.Name.ToString() == "Plugins")
{
return d.FullName;
}
else
{
Console.WriteLine("Data path Fallback!!!");
pathName = System.IO.Path.Combine(dirName, @"\TradeBotData");
System.IO.Directory.CreateDirectory(pathName);
Console.WriteLine("Created Save Folder At: {0} :", pathName);
return pathName;
}
}
}
이 문제가 발생하는 이유는 확실하지 않습니다. 나는 if
과 else
을 가지고 있기 때문에 모든 코드 경로가 값을 반환한다고 생각합니다. return "";
을 코드에 삽입하면 ""; 무한히.C# 컴파일러 반환 오류 모든 코드 경로가 값을 반환하지 않습니다.
알려 주시기 바랍니다.
을 당신이 뭔가를 반환해야 할 때'경우 (d.Parent.Name.ToString() == "플러그인") ' 실패합니다. –
Hari의 설명을 확장하려면 : 디렉토리가 존재하지 않는 경우, 첫 번째'if' 문장의 본문에 들어갑니다. 만약 부모 이름이'Plugins'이 아니라면 아무 것도 반환하지 않습니다. –