2010-01-18 23 views
0

我發現了一個檢查文件是否存在的好方法,如果它存在,請閱讀內容,但出於某種原因,我無法創建一個方法。用於檢查,讀取和返回文件內容的良好ASP.NET方法

這是我到目前爲止有:

<script runat="server"> 
    void Page_Load(Object s, EventArgs e) { 

     lblFunction.Text = mwbInclude("test.txt"); 
    } 


    string mwbInclude(string fileName) { 
     string inc = Server.MapPath("/extra/include/" + Request["game"] + "/" + fileName); 
     string valinc; 

     if(System.IO.File.Exists(inc)) 
     { 
      valinc = System.IO.File.ReadAllText(inc); 
     } 

     return valinc; 
    } 
</script> 

我希望我能提供更多的信息,但是這是在服務器上沒有顯示錯誤的任何反饋,只需404頁。

+1

將您的代碼包裝在try/catch中,並出現錯誤Response.Write異常信息 – 2010-01-19 00:15:38

回答

1

我覺得

valinc = Response.Write(System.IO.File.ReadAllText(inc)); 

應該

valinc = System.IO.File.ReadAllText(inc); 
+0

我的確忽視了這一點。但沒有它,它仍然會失敗。 – skerit 2010-01-18 23:03:22

+0

請提供更多信息重新「失敗」。 – RedFilter 2010-01-19 13:40:21

+0

我希望我可以,但這是一個非常封閉的系統。 我必須直接在生產上做到這一點,它不會出錯。 但是,我通過不使用函數來「固定」它,而是每次重複該代碼。不是很整齊,但很好。 – skerit 2010-01-22 08:27:31

1

你爲什麼要設置Text屬性調用Response.Write?你想要將文本呈現爲標籤還是整個迴應?

+0

啊,是的,當然,Response.Write應該不存在。但即使沒有它,它仍然失敗。 – skerit 2010-01-18 23:02:17

1

如果你得到一個404,這是因爲你的網頁沒有被發現,而不是因爲有一個與腳本本身有問題。您是否嘗試過撕掉所有代碼,並僅僅將一些HTML標籤作爲完整性檢查進行粘貼?