2016-01-27 64 views
0

入店這就是發生在這裏的一個簡單的例子。在ASP.NET代碼公共變量的背後,是不是的.aspx

Default.aspx的

<%@ Page Language="vb" AutoEventWireup="false" CodeBehind="default.aspx.vb" Inherits="base._default1" %> 

    <!DOCTYPE html> 

    <html xmlns="http://www.w3.org/1999/xhtml"> 
    <head runat="server"> 
     <title></title> 
    </head> 
    <body> 
     <form id="form1" runat="server"> 
     <div> 
     <% Response.Write(sName) %> 
     </div> 
     </form> 
    </body> 
    </html> 

背後default.aspx.vb

Public Class _default1 
    Inherits System.Web.UI.Page 

    Public sName As String = "Jimmy" 

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 

    End Sub 

End Class 

錯誤代碼是

BC30451 'SNAME' 未聲明。由於其保護級別,它可能無法訪問。 base C:\ Users \ Jimmy \ Documents \ Visual Studio 2015 \ Projects \ base \ base \ teste \ default.aspx 12

問題在哪裏?

回答

2

最大的問題是你的類_default1沒有標記爲partial類。

它應該是

Public partial Class _default1 
     Inherits System.Web.UI.Page 

還有一點是,你的頁面指令有屬性AutoEventWireup="false",並與你現在所擁有的映射你的頁面事件的方式是行不通的。因此,請將其設置爲true AutoEventWireup="true"

您的@Page指令非常奇怪,如下所示。

<%@ Page AutoEventWireup="false" CodeBehind="default.aspx.vb" Inherits="base._default1" %> 

總結;下面是你應該照顧過

  1. 紀念類partial

  2. 設置AutoEventWireup="true"

  3. 變化CodeBehind屬性CodeBehind="default1.aspx.vb"

  4. Inherits屬性更改爲Inherits="your_namespace._default1"

  5. 問題
+0

是啊,我的壞,這不是問題的全部。請參閱編輯答案。 – Rahul

+0

燁看到你的編輯和已經upvoted :) –

+0

對不起,這並沒有解決問題。 –

相關問題