簡體   English   中英

有沒有辦法在我的asp.net應用程序中的類中使用Server.MapPath

[英]Is there a way to use Server.MapPath in a class in my asp.net application

我的應用程序的根目錄下有一個log.txt文件。 我希望能夠讓我的日志類能夠訪問此文件並寫入它。 但我不知道如何在我的代碼中告訴它文件的正確路徑。 謝謝你的幫助

using (StreamWriter w = File.AppendText("log.txt"))
    {
         Log(e.ToString(),w);
         w.Close();
    }

采用

Server.MapPath("~/log.txt")

獲取完整的文件名。

更新:

如果您不在ASP頁面內,而是在常規課程中,請嘗試:

System.Web.HttpContext.Current.Server.MapPath("~/log.txt")

更新2:您似乎正在嘗試制作自己的日志記錄解決方案。 您可以考慮使用現有的解決方案,如NLogLog4Net

通常,您將從Web.config獲取該路徑。
它將是一個物理文件路徑,而不是相對URL路徑。 不需要MapPath。

最簡單的方法:使用“設置”設計器工具創建它並將其讀取為

 string fname = Properties.Settings.Default.LogFile;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM