我想在連接字符串中包含一個替換,以便不用引用C:\Users\<myid>\Documents
,我可以將用戶特定的信息從其中刪除,並讓應用程序動態地解析路徑。我在另一個SO問題的答案中看到,應用程序數據可以用${AppData}
引用,但迄今爲止我還沒有找到用於引用Documents文件夾甚至基本用戶文件夾的類似變量/宏。我試過${MyDocuments}
和${Documents}
,但無濟於事,我找不到包含所有可能性的列表。有沒有辦法做到這一點,而無需編寫自定義配置代碼?我不反對,如果這是唯一的出路;但是,如果存在解決方案,我寧願使用烘焙解決方案。App.config我的文檔宏
0
A
回答
1
提供的間接方式是| DataDirectory |,它在AppDomain中進行配置。但是這需要修改一個.config文件,這對於服務器風格的應用來說是非常合理的,但如果你只是想從用戶的主目錄中選擇文件,那麼就不需要尋找那種東西。
最簡單的方法是在運行時格式化字符串。您可以在應用程序中設置這樣在連接字符串:
Server=.\SQLExpress;AttachDbFilename={0}\MyDataFile.mdf;Database=dbname
注意{0},讓您將目錄中的String.Format():
var homedir = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments);
var connstr = string.Format(Properties.Settings.Default.ConnectionString, homedir);
而你仍然有當用戶想要一個完全不同的位置的後門時,他只需將app.exe.config文件更改爲他想要的目錄即可。
+0
我喜歡你的解決方案,它非常優雅。試圖查看是否有一種方法可以在app.config中動態指定路徑,但是,似乎您對該問題說「不」。 –
相關問題
- 1. MSBUILD宏文檔?
- 2. 從宏到單個word文檔的宏
- 3. Excel VBA宏的文檔
- 4. Excel Personal.xlsb保存文檔宏
- 5. VB將宏從一個文檔複製到另一個文檔的宏
- 6. 讓Doxygen的文檔中的宏調用
- 7. leiningen的defproject宏的說明/文檔
- 8. 主Word文檔中的宏在合併文檔中丟失
- 9. 如何搜索數字宏的文檔?
- 10. Doxygen - 用宏創建的文檔功能
- 11. 帶有多表的excel宏Word文檔
- 12. 跨多個word文檔的宏
- 13. 我在哪裏可以找到RPM宏擴展的文檔?
- 14. 如果在模塊中定義宏,我該如何正確編寫宏文檔?
- 15. 我的app.config文件有什麼問題?
- 16. 將宏從一個文檔移動到另一個文檔
- 17. Word宏將文檔添加到文檔失敗
- 18. 宏完成時刪除文檔
- 19. 使宏可用於任何Visio文檔
- 20. 提交文檔時刪除宏
- 21. 在XSLX文檔中使用Excel宏
- 22. PowerPoint - 在文檔加載時加載宏?
- 23. MS Word 2010.如何訪問存儲在我正在使用的文檔以外的文檔中的宏?
- 24. 在app.config文件
- 25. C#App.Config文件
- 26. .NET app.config文件
- 27. 我不能修改app.config文件
- 28. 我需要app.config嗎?
- 29. Wix不覆蓋我的app.config
- 30. OpenOffice的宏的Python:我在哪裏可以找到有用的文檔?
您可以向我們展示您的代碼的相關部分,指定這是什麼類型的.NET應用程序,並提供有關使用您找到的「$ {AppData}」的參考? – sstan