2013-03-21 50 views
1

你如何調試一個ASPX文件?如何調試一個ASPX文件?

我對ASPX文件有點新,但我不是C#的新手。

我想所有的asp.net c#項目都是作爲編譯代碼在服務器上運行的。所以在某處某處存在某種二進制文件,或者可能是像Silverlight那樣的XAP文件。

但似乎並非如此。看起來有時候,你可以有一個ASPX文件以及C Sharp代碼文件,它就像一個PHP文件一樣運行。對於初學者來說,對嗎?我到目前爲止是否正確?

現在,如果我是ASPX文件和CSHARP代碼隱藏文件的所有者,我將如何在Visual Studio中進行調試?

如何運行代碼?

我的觀點是沒有項目要加載。只有一個文件。

設置一個斷點後,沒有什麼可運行的。我已經嘗試附加到加載了aspx代碼的瀏覽器,但是斷點變爲非活動狀態。

該文件是https://www.seattleu.edu/admission/nonMatricLander.aspx

,並從服務器上存在只是aspx文件和附帶的.cs文件

這是所有有。沒有解決方案文件,沒有default.aspx文件,除了其他.aspx文件和aspx.cs文件外,該目錄中沒有任何內容。

如果這是一個網頁表單,將會有一個項目文件和和或解決方案文件。會有東西被編譯,對嗎?沒有那樣的東西。沒有dll文件

+0

需要一個項目才能運行,否則無法調試。如果頁面是自包含的,則可以始終創建新的WebForms項目並將這些文件放入項目中。 – 2013-03-21 02:48:44

回答

5

假設您已經有本地IIS服務器上呈現的ASPX頁面(即通過放置到默認站點的文件夾)。

在Visual Studio

  • 打開頁面(從本地主機:....)在你的選擇
  • 調試器的瀏覽器 - >附加到進程
  • 看看W3WP是在列表中,如果不檢查「顯示來自所有用戶」複選框,可能需要運行VS作爲管理員(或具有調試權限的用戶)
  • 附加到w3wp(確保在必要時選擇正確的.Net版本)
  • 打開ASPX/ASPX .cs和設置斷點
  • 在瀏覽器中刷新頁面命中斷點

注:創建Web項目之一將是更容易,因爲你將能夠使用由VS和更容易的整體體驗提供本地服務器。

+0

我相信你的回答是正確的。我相信我需要在本地打開代碼。下一步是找出如何運行本地主機。 – xarzu 2013-03-21 17:52:54

0

通常,DLL文件不會與實際的aspx頁面同位。 c-sharp文件必須被編譯到DLL中,否則頁面將無法運行。出現兩種不同的可能性:1.)DLL文件位於另一個文件夾中,您看不到它或沒有權限查看它,或者2。)該頁面最初是在Visual Studio中設計的,但改爲使用jQuery或JavaScript來處理表單提交。一個線索:

<input type="submit" name="ctl00$ctl00$MainContentPlaceholder$cphBody$btnSubmit" 
value="&nbsp;" 
onclick="$(this).hide();$('#Processing').show();return true; 
;WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(&quot;ctl00$ctl00$MainContentPlaceholder$cphBody$btnSubmit&quot;, &quot;&quot;, 
true, &quot;&quot;, &quot;&quot;, false, false))" 
id="ctl00_ctl00_MainContentPlaceholder_cphBody_btnSubmit" class="btnSubmit"> 

WebForm_DoPostBackWithOptions是一個.NET特定的功能 - 我想你可能缺少DLL,它在網站內的其它位置。

要調試實際的aspx/aspx.cs文件本身,我建議只將它們放在一個項目中。這比試圖在IIS管理器中移動要容易得多。