2011-09-19 54 views
7

我遇到了使用母版頁的asp.net webform的問題。該問題只發生在頁面名爲default.aspx時。如果在Page_Load事件中有任何代碼,則命名爲default.aspx時,其他事件不會觸發。這還包括所有代碼註釋我已經測試了OnInit和Button單擊事件,問題首先表現爲按鈕點擊不發射。default.aspx頁面中的事件問題(ASP.net 3.5)

Default.aspx的代碼

<%@ Page Title="" Language="C#" MasterPageFile="~/TWS/tws.Master" AutoEventWireup="true" CodeBehind="default.aspx.cs" Inherits="SITMComAU.TWS.original" %> 
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server"> 
</asp:Content> 
<asp:Content ID="Content2" ContentPlaceHolderID="bodyPlaceholder" runat="server"> 
</asp:Content> 

的OnInit 火災: - 選中通過斷點

public partial class original : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 


    } 

    protected override void OnInit(EventArgs e) 
    { 
     base.OnInit(e); 
     int a = 1; 
     int b = 2; 
     int c = a; 
    } 
} 

的OnInit 不火: - 選中通過斷點

public partial class original : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 
     /* 
      int y = 5; 
      int z = y - 1; 
     */   
    } 

    protected override void OnInit(EventArgs e) 
    { 
     base.OnInit(e); 
     int a = 1; 
     int b = 2; 
     int c = a; 
    } 
} 

的OnInit不觸發: - 選中通過斷點

public partial class original : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

      int y = 5; 
      int z = y - 1; 

    } 

    protected override void OnInit(EventArgs e) 
    { 
     base.OnInit(e); 
     int a = 1; 
     int b = 2; 
     int c = a; 
    } 
} 

上述所有工作,如果ASPX,CS和設計文件重命名爲default之外的任何東西。

至於母版頁。它只是佈局,在.cs文件中沒有功能。

我曾嘗試:

  • 重新啓動Visual Studio的
  • 重啓
  • 刪除DLL,從倉
  • 巫毒
  • pdb文件拉出我的頭髮
  • 拔出其他頭髮

我希望有人能幫忙!

+0

你有什麼其他的網頁?他們中的任何一個都被命名爲'Default'? ASP.NET項目會自動(如果有的話)自動執行命名空間,所以它可能是你有類型衝突(即足夠使事件被綁定到_other_'Default',也許)。 –

+0

@Mr 。項目失望是一個網站,幾個目錄很深。其中一些具有default.aspx頁面。我正在考慮沿着samw線,這就是爲什麼類是「原」而不是「默認」或「_default」的原因 –

+1

奇怪,巫毒師通常工作:) – onof

回答

0

嘗試更改codebehind命名空間和/或類,看看是否解決了問題。如果是這樣,這可能是由於另一個default.aspx頁面的事件/控件干擾。

+0

正如示例中所提到的,該類不是「默認」,而是原始的 –

+0

由於您將default.aspx類命名爲「原始」類的做法,因此我認爲這可能與某處存在衝突。你有沒有嘗試改變它到別的只是踢?也許SITMComAU.TWS.originalXYZ。那至少會把這個理論拋諸腦後。 –

+0

如果類後面的代碼沒有正確命名或重複,頁面將不會運行;它甚至不會編譯。這不可能。 –

1

可能是事件正在被解僱,它只是一個Visual Studio調試器的問題,而您沒有達到中斷點。嘗試寫一些文件,看看是否發生。