Làm th? nào đ? làm vi?c v?i m?-đ?ng sau t?p tin l?p trong m?t ASP.NET ?ng d?ng b?ng cách s? d?ng Visual Basic.NET

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 312311 - Xem s?n ph?m mà bài này áp d?ng vào.
Đ?i v?i m?t Microsoft Visual C#.NET Phiên b?n c?a bài vi?t này, xem 308143.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

Bài vi?t này ch?ng t? làm th? nào đ? phát tri?n .aspx các trang đó s? d?ng m?-đ?ng sau l?p t?p tin trong Microsoft ASP.Các ?ng d?ng NET. M?u m? ? đây bài vi?t bao g?m các yêu c?u cho c? hai m?-đ?ng sau t?p tin l?p đư?c precompiled và m?-đ?ng sau l?p t?p tin đó đư?c biên d?ch theo yêu c?u. Đ? bi?t thêm thông tin v? t?p tin m? phía sau l?p và tri?n khai c?a h?, xem các "Tham kh?o" ph?n.

Yêu c?u

Danh sách sau v?ch ra đư?c đ? ngh? ph?n c?ng, ph?n m?m, h? t?ng m?ng, và gói d?ch v? mà b?n c?n:
  • Microsoft Windows 2000, Microsoft Windows XP ho?c Microsoft Windows Server 2003
  • Microsoft.NET Framework 1.0 ho?c Microsoft.NET Framework 1.1
  • Microsoft Internet Information Services (IIS) Phiên b?n 5.0 ho?c m?i hơn

T?o m?t ASP.NET Web ?ng d?ng b?ng cách s? d?ng Microsoft Visual Basic.NET

Ph?n này ch?ng t? làm th? nào đ? t?o ra m?t m?i ASP.NET Web ?ng d?ng có tên CodeBehindSamples.
  1. B?t đ?u Microsoft Visual Studio.NET.
  2. Trên các Tệp tr?nh đơn, đi?m đ?n M?i, sau đó b?m Dự án.
  3. Dư?i Các lo?i d? án, b?m Visual Basic d? án. Dư?i Khuôn mẫu, b?m ASP.NET Web ?ng d?ng.
  4. Trong các V? trí h?p, nh?p tên máy ch?, và sau đó g?CodeBehindSamples tên d? án. N?u b?n đang s? d?ng đ?a phương máy ch?, r?i kh?i v? trí như http://localhost. Ví d? này, v? trí c?a b?n là http://localhost/CodeBehindSamples.

S? d?ng m?-đ?ng sau t?p tin l?p h?c

N?u b?n s? d?ng m?-đ?ng sau t?p tin l?p h?c v?i các trang web .aspx, b?n có th? riêng các bài tr?nh bày m? t? logic ?ng d?ng l?i (ho?c M?-đ?ng sau). M?-đ?ng sau t?p tin l?p đư?c biên so?n đ? cho nó có th? đư?c t?o và đư?c s? d?ng như m?t đ?i tư?ng. Đi?u này cho phép truy c?p vào thu?c tính c?a nó, các phương pháp c?a nó, c?a nó và x? l? s? ki?n. Đ? làm vi?c này, trang .aspx ph?i ch? đ?nh đ? k? th?a t? l?p cơ s? m?-đ?ng sau. Đ? th?c hi?n vi?c này, s? d?ng các K? th?a thu?c tính cho các @ Trang ch? th?. .Aspx trang th?a hư?ng t? m?-đ?ng sau l?p, và m?-đ?ng sau l?p th?a hư?ng t? các Trang l?p h?c.

Theo m?c đ?nh, n?u b?n b?ng cách s? d?ng Visual Studio.NET, m?t CodeBehind thu?c tính đư?c thêm vào các @ Trang ch? th?. Các.NET Framework không th?c s? s? d?ng thu?c tính này. Thay vào đó, Visual Studio.NET s? d?ng thu?c tính này đ? duy tr? m?t tham chi?u đ?n t?p tin liên quan đ?n m?-đ?ng sau cho trang .aspx.

Đ? ch?ng minh làm th? nào Visual Studio.NET s? d?ng các CodeBehind thu?c tính, lo?i b? các CodeBehind thu?c tính. Lưu ? r?ng b?n có th? không c?n nh?p chu?t ph?i trang .aspx sau đó b?m Xem m?. Hành vi này x?y ra b?i v? Visual Studio.NET không c?n ch?a m?t tài li?u tham kh?o cho các t?p tin l?p mà nó có th? s? d?ng cho trang. H?y nh? r?ng đi?u này là không làm vi?c.NET Framework s? d?ng m?-đ?ng sau t?p tin l?p h?c, nhưng làm th? nào Visual Studio .NET qu?n l? các t?p tin d? án.

S? d?ng các thu?c tính Inherits v?i các l?p h?c t?o

N?u b?n precompile các l?p m?-đ?ng sau c?a b?n thành m?t h?i đ?ng, b?n có th? s? d?ng các K? th?a thu?c tính đ? ch? r? các l?p h?c mà t? đó đ? k? th?a. Trong này k?ch b?n, b?n không c?n ph?i bao g?m các l?p h?c th?c t? m?-đ?ng sau t?p tin khi b?n tri?n khai các ?ng d?ng. Thay vào đó, b?n ph?i tri?n khai các h?i đ?ng và .aspx Trang. B?n ph?i đ?t l?p ráp trong thư m?c Bin cho ?ng d?ng khi b?n tri?n khai các ?ng d?ng.

Ph?n này ch?ng t? làm th? nào đ? t?o ra m?t m?u Web m?i mà s? d?ng các phương pháp t?o và th?a hư?ng t? các M?-đ?ng sau l?p.
  1. Đ? thêm m?t h?nh th?c Web m?i đ?t tên InheritSample.aspx c?a b?n ph?ng thu tr?c quan.NET d? án, theo các bư?c sau:
    1. Trong gi?i pháp Explorer, b?m chu?t ph?i vào các CodeBehindSamples d? án nút, h?y nh?p vào Thêm, sau đó b?m Thêm m?u Web.
    2. Trong các Tên h?p, lo?i InheritSample.aspx, và sau đó b?m M?.
  2. Chuy?n sang thi?t k? xem, và sau đó thêm m?t m?u Web Nh?n hi?u đi?u khi?n trang .aspx t? h?p công c?.
  3. Nh?p chu?t ph?i vào trang .aspx, và sau đó nh?p vào Xem m?. Các t?p tin m? phía sau m? trong tr?nh biên t?p.
  4. Trong các t?p tin m? phía sau, thêm m? sau đây đ? các Page_Load s? ki?n:
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Label1.Text = "(Precompiled): Page_Load fired!"
        End Sub
    						
    Chú ý M? này ch? ch?ng t? r?ng m?-đ?ng sau l?p là liên quan đ?n các m?u t?i th?i gian ch?y trong các bư?c sau.
  5. Chuy?n t? t?p tin l?p m?-đ?ng sau trang .aspx trong biên t?p viên, và sau đó chuy?n sang HTML.
  6. Trên đ?u trang, xem l?i m? cho các @ Trang ch? th?. M? nên đư?c tương t? như m?c đ?nh sau đây M? s?:
    <%@ Page Language="vb" AutoEventWireup="false" Codebehind="InheritSample.aspx.vb" Inherits="CodeBehindSamples.InheritSample"%>
    						
    Trong ví d? này, thông báo r?ng trang .aspx th?a hư?ng t? các M?-đ?ng sau l?p đư?c đ?t tên InheritSample trong các CodeBehindSamples không gian tên. Theo m?c đ?nh, m?t ?ng d?ng Web đư?c t?o ra trong Visual Studio.NET s? d?ng m?tProjectName.ClassNamecơ c?u t? ch?c cho các K? th?a giá tr? thu?c tính.
  7. Trên các Tệp tr?nh đơn, nh?p vào Lưu t?t c? Lưu bi?u m?u Web và khác liên quan đ?n d? án t?p tin.
  8. Trong ph?ng thu tr?c quan.NET IDE, trên các Xây d?ng tr?nh đơn, nh?p vào Xây d?ng đ? xây d?ng các d? án.
  9. Trên các Dự án tr?nh đơn, nh?p vào Hi?n t?t c? các t?p.
  10. Trong gi?i pháp Explorer, nh?p vào đ? m? r?ng các Bin thư m?c. L?p ráp đư?c t?o ra khi b?n biên d?ch các d? án t? ph?n trư?c (đó là CodeBehindSamples.dll trong ví d? này) xu?t hi?n trong thư m?c Bin.
  11. Trong ph?ng thu tr?c quan.NET, kích chu?t ph?i vào các InheritSample Trang trong gi?i pháp Explorer và b?m Xem trong tr?nh duy?t đ? ch?y m?. Nh?n là dân cư v?i các giá tr? sau đây:
    (Precompiled): Page_Load fired!
    						

S? d?ng các thu?c tính Src và biên d?ch theo yêu c?u

N?u m?-đ?ng sau t?p tin l?p h?c c?a b?n s? đư?c biên d?ch theo yêu c?u thay v? precompiled, b?n ph?i s? d?ng các Src thu?c tính đ? xác đ?nh đư?ng d?n tương đ?i m?-đ?ng sau l?p t?p tin. H?y ch?c ch?n r?ng b?n bao g?m các t?p tin l?p h?c th?c t? khi b?n s? d?ng phương pháp này tri?n khai các ?ng d?ng.

Chú ý N?u b?n phát tri?n c?a các ?ng d?ng trong Visual Studio.NET, h?y xem ph?n "Tham kh?o", bài vi?t này cho bi?t thêm thông tin v? các v?n đ? ti?m năng v?i vi?c s? d?ng các Src thu?c tính. Visual Studio.NET đư?c thi?t k? đ? t?n d?ng l?i th? c?a precompiling m? ?ng d?ng c?a b?n thành m?t h?i đ?ng thay v? s? d?ng biên d?ch nhu c?u ti?p c?n đư?c mô t? trong ph?n này.
  1. Đ? thêm m?t h?nh th?c Web m?i đư?c đ?t tên theo SrcSample.aspx đ? d? án c?a b?n trong Visual Studio.NET, h?y làm theo các bư?c sau:
    1. Trong gi?i pháp Explorer, b?m chu?t ph?i vào nút d? án Nh?p vào Thêm, sau đó b?m Thêm m?u Web.
    2. Trong các Tên h?p, lo?i SrcSample.aspx, và sau đó Nh?p vào M?.
  2. Chuy?n sang thi?t k? xem, và sau đó thêm m?t m?u Web Nh?n hi?u đi?u khi?n trang .aspx t? h?p công c?.
  3. Nh?p chu?t ph?i vào trang .aspx, và sau đó nh?p vào Xem m?. Các t?p tin m? phía sau m? trong tr?nh biên t?p.
  4. Trong các t?p tin m? phía sau, thêm m? sau đây đ? các Page_Load s? ki?n:
    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
            Label1.Text = "(Src): Page_Load fired!"
        End Sub
    					
  5. Chuy?n t? t?p tin l?p m?-đ?ng sau trang .aspx trong biên t?p viên, và sau đó chuy?n sang HTML.
  6. Trên đ?u trang, xem l?i m? cho các @ Trang ch? th?. M? nên đư?c tương t? như m?c đ?nh sau đây M? s?:
    <%@ Page language="vb" Codebehind="SrcSample.aspx.vb" 
    AutoEventWireup="false" Inherits="CodeBehindSamples.SrcSample"%>
    					
  7. Đ? đơn gi?n hóa các ví d? này, xóa các t?p tin Global.asax t? d? án c?a b?n. Đi?u này ch? đư?c th?c hi?n trong ví d? này đ? ngăn ch?n các l?i liên quan đ?n trang m?-đ?ng sau t?p tin Global.asax.
  8. Trên các Tệp tr?nh đơn, nh?p vào Lưu t?t c? Lưu bi?u m?u Web và khác liên quan đ?n d? án t?p tin.

    Chú ý B?i v? b?n mu?n t?p tin l?p m?-đ?ng sau cho m?u này đ? biên d?ch theo yêu c?u, không xây d?ng gi?i pháp bây gi?.
  9. Đ? ch?y các trang, ch?y Microsoft Internet Explorer và sau đó t? nh?p URL đ?n trang. Không ch?n các Xem trong tr?nh duy?t ho?c các Duy?t v?i l?a ch?n t? Visual Studio.NET IDE. N?u không, n?u b?n đang s? d?ng Visual Studio.NET 2003, trang m?-đ?ng sau s? t?o thành m?t h?i đ?ng đó n?m trong thư m?c Bin theo m?c đ?nh. Sau khi b?n xem trang, b?n s? nh?n đư?c thông báo l?i sau:
    Không th? n?p ki?u 'CodeBehindSamples.SrcSample'.
    X?y ra l?i này b?i v? các t?p tin l?p m?-đ?ng sau không đư?c biên so?n, và b?n có chưa đư?c bao g?m các Src thu?c tính đ? tham kh?o các t?p tin l?p m?-đ?ng sau.
  10. Thêm các Src thu?c tính cho các @ Trang ch? th? như sau:
    <%@ Page language="vb" Codebehind="SrcSample.aspx.vb" 
    AutoEventWireup="false" Inherits="SrcSample" 
    Src="SrcSample.aspx.vb"%>
    						
    Nh?n th?y r?ng các Src thu?c tính đư?c li?t kê v?i đư?ng d?n tương đ?i c?a m? đ?ng sau l?p t?p tin (SrcSample.aspx.vb), và r?ng các K? th?a giá tr? thu?c tính đư?c thi?t l?p đ? tham kh?o các SrcSample l?p h?c.
  11. Trên các Tệp tr?nh đơn, nh?p vào Lưu t?t c? Lưu bi?u m?u Web và khác liên quan đ?n d? án t?p tin. H?y nh? r?ng, không xây d?ng các gi?i pháp, b?i v? b?n mu?n t?p tin m? phía sau l?p cho m?u này đ? đư?c biên so?n theo yêu c?u.
  12. Đ? ch?y các trang, kh?i đ?ng Internet Explorer và sau đó t? nh?p URL đ?n trang. Không ch?n các Xem trong tr?nh duy?t ho?c các Duy?t v?i l?a ch?n t? Visual Studio.NET IDE. N?u không, n?u b?n đang s? d?ng Visual Studio.NET 2003, trang m?-đ?ng sau s? t?o thành m?t h?i đ?ng đó n?m trong thư m?c Bin theo m?c đ?nh. T?i th?i đi?m này, các trang nên đư?c n?p trong tr?nh duy?t, và nh?n là dân cư v?i giá tr? sau đây:
    (Src): Page_Load fired!
    							
    M?-đ?ng sau t?p tin l?p h?c đ? đư?c biên d?ch vào nhu c?u và ch?c năng m?t cách chính xác.

Khắc phục sự cố

  • N?u b?n không ph?i precompile m?-đ?ng sau t?p tin l?p h?c và không thêm các Src thu?c tính cho các @ Trang ch? th?, ho?c n?u đư?ng d?n ?o cho các thu?c tính không chính xác, b?n nh?n đư?c thông báo l?i sau:
    Có th? không t?i lo?i 'CodeBehindSamples.SrcSample'.
    Chú ý Thông báo l?i này c?ng có th? là k?t qu? c?a v? b?c không chính xác c?a các K? th?a giá tr? thu?c tính. H?y ch?c ch?n r?ng giá tr? c?a các K? th?a thu?c tính là đánh v?n và vi?t hoa cùng m?t cách v?i các tên m?-đ?ng sau l?p.
  • N?u b?n nh?n đư?c thông báo l?i sau, vui l?ng xem l?i c?a b?n @ Trang giá tr? thu?c tính ch? th? đ? đ?m b?o r?ng h? đư?c thi?t l?p đúng:
    Các lo?i h?nh cơ s? 'CodeBehindSamples.SrcSample' không t?n t?i trong t?p tin m? ngu?n 'SrcSample.aspx.vb'.
    B?n có th? tham kh?o đ? bư?c 10 c?a "The Src thu?c tính và biên d?ch On Demand" ph?n c?a bài vi?t này cho m?t ví d? v? làm th? nào đi?u này nên đư?c xác đ?nh.
  • Khi b?n tri?n khai .aspx trang, n?u k?t h?p c?a h? M?-đ?ng sau t?p tin l?p đư?c precompiled, b?n ch? ph?i tri?n khai các h?i đ?ng vào rác thư m?c ?ng d?ng. B?n không c?n ph?i tri?n khai m? th?c s? đ?ng sau l?p t?p tin v?i các ?ng d?ng.
  • Khi b?n tri?n khai .aspx trang, n?u k?t h?p c?a h? M?-đ?ng sau t?p tin l?p h?c không ph?i precompiled, b?n ph?i tri?n khai các m? đ?ng sau l?p t?p tin v?i các ?ng d?ng. Ngoài ra, b?n ph?i thêm các Src thu?c tính cho các @ Trang ch? th?, b?i v? các t?p tin l?p h?c ph?i có s?n khi nó biên so?n theo yêu c?u.
  • N?u b?n mu?n, ho?c n?u b?n ph?i có các trang Web m?u c?a b?n trong m?t file duy nh?t, b?n có th? phát tri?n các trang .aspx c?a b?n có ch?a m? c?a b?n ch? không ph?i là t?p l?p m?-đ?ng sau. Đ? bi?t thêm chi ti?t v? làm th? nào đ? phát tri?n các h?nh th?c Web file duy nh?t trong Visual Studio.NET, ghé thăm Web site sau c?a Microsoft Developer Network (MSDN):
    http://MSDN.Microsoft.com/en-US/Library/aa290385 (VS.71) .aspx

THAM KH?O

Đ? bi?t thêm chi ti?t v? h?i đ?ng khác nhau, h?y truy c?p MSDN Web site sau:
http://msdn2.Microsoft.com/en-US/Library/hk5f40ct (vs.71) .aspx
Đ? bi?t thêm chi ti?t v? vi?c tri?n khai.NET Framework ?ng d?ng, truy c?p vào MSDN Web site sau:
http://MSDN.Microsoft.com/en-US/Library/6hbb4k3e (VS.80) .aspx
Đ? bi?t thêm chi ti?t v? bài vi?t, m?u, và các ngu?n l?c khác có liên quan đ?n ASP.NET l?p tr?nh, truy c?p vào MSDN Web site sau:
http://msdn2.Microsoft.com/en-US/Library/aa286485.aspx
Đ? bi?t thêm thông tin v? các @ Trang ch? th? và các thu?c tính khác nhau, h?y truy c?p MSDN Web site sau:
http://msdn2.Microsoft.com/en-US/Library/ydy4x04a (vs.71) .aspx
Đ? bi?t thêm chi ti?t v? cú pháp chung bi?u m?u Web, truy c?p vào MSDN Web site sau:
http://MSDN.Microsoft.com/en-US/Library/fy30at8h (VS.71) .aspx
Đ? bi?t thêm chi ti?t, nh?p vào s? bài vi?t sau đ? xem các bài vi?t trong cơ s? ki?n th?c Microsoft:
303247ASP.T?ng quan v? m?u m? NET-đ?ng sau
305141 ASP.T?ng quan v? khuôn kh? NET trang
301392 Làm th? nào đ? t?o m?t thư m?c ?o (Subweb) trong IIS 4.0 ho?c IIS 5,0

Thu?c tính

ID c?a bài: 312311 - L?n xem xét sau cùng: 27 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
T? khóa: 
kbhowtomaster kbmt KB312311 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:312311

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com