2012-06-08 86 views
0

因此,我有以下代碼應該將正則表達式與目錄中的文件匹配,並輸出與正則表達式匹配的所有文件名。不過,我認爲我的正則表達式可能是錯誤的。它應該輸出形式[內容] _ [型號名稱] _ [更多內容]的文件,但目前不顯示任何內容。將網頁中的所有文件加載到網頁上ASP.NET

代碼:

 string pattern = @".*"+Request.QueryString["model"][email protected]".*"; 
     String myPath = HttpRuntime.AppDomainAppPath; 
     var matches = Directory.GetFiles([email protected]"All Plots 1 Year\").Where(path => Regex.Match(path, pattern).Success); 
     foreach (var f in matches) 
     { 
      Response.Write(f); 
      Response.Write("<br />"); 
     } 
+0

什麼的Request.QueryString的值是[ 「模型」]? – Joshua

+0

您可以逐步調試以找到自己的問題。這裏找不到什麼?文件,目錄,權限,查詢字符串是錯誤的......?甚至response.write可能會失敗...所以調試debug debug,一步一步... – Aristos

+0

Request.QueryString [「model」]返回一個字符串,例如2k01或3s02,它作爲另一個GET參數進來使用Jquery動態加載此內容的頁面。我知道該頁面正在加載,因爲我可以做一些類似於Response.Write(「hello world」)的東西,並且它會彈出,當我不用正則表達式解析文件名時,我可以列出整個目錄,所以我確定它與一個不正確的正則表達式有關,或者我如何應用它。 –

回答

0

如果您正則表達式就是這麼簡單,然後跳到正則表達式,跳過LINQ和使用>>

Directory.GetFiles(Path.Combine(myPath, @"All Plots 1 Year\"), "*" + Request.QueryString["model"] + "*")