[英]C# set appdata or any special folder path in app config file
我試圖找到一種將appdata路徑用作我的environment.currentdurectory的方法,這意味着我想從appdata文件夾運行c#應用程序,並且在我的項目中,我始終使用environment.currentdirectory。
我找不到一種方法可以在app config中設置appdata路徑,然后再用appdata路徑替換environment.curentdirectory ...
PS :。
1)我想將我的程序數據路徑設置為appdata
2)我的項目代碼設置為使用environment.currentdirectory
3)我不想通過逐行替換替換environment.currentdirectory
目標.Net框架4
您是否嘗試通過應用程序域執行此操作。
看到:
https://docs.microsoft.com/zh-cn/dotnet/api/system.appdomain.basedirectory?view=netframework-4.7.2
// Create application domain setup information
var domaininfo = new AppDomainSetup();
domaininfo.ConfigurationFile = System.Environment.CurrentDirectory +
Path.DirectorySeparatorChar +
"ADSetup.exe.config";
domaininfo.ApplicationBase = System.Environment.CurrentDirectory;
//Create evidence for the new appdomain from evidence of the current application domain
Evidence adEvidence = AppDomain.CurrentDomain.Evidence;
// Create appdomain
AppDomain domain = AppDomain.CreateDomain("Domain2", adEvidence, domaininfo);
// Display application domain information.
Console.WriteLine("Host domain: " + AppDomain.CurrentDomain.FriendlyName);
Console.WriteLine("Child domain: " + domain.FriendlyName);
Console.WriteLine();
Console.WriteLine("Configuration file: " + domain.SetupInformation.ConfigurationFile);
Console.WriteLine("Application Base Directory: " + domain.BaseDirectory);
AppDomain.Unload(domain);
因此,我發現除非直接進行設置,否則無法直接從配置文件獲取應用程序數據路徑。
最好的用途就是獲取應用程序的數據路徑
並使用Environment.specialfolder方法。
否則,上面發布的答案由MSDN本身給出,顯然可以工作,但是代碼太大
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.