Các bài tp Microsoft .NET 1
MC LC
Bài 1 Microsoft .NET Framework.................................................................................2
Bài 2 Visual Studio.NET .............................................................................................13
Bài 3 Nhng khác bit gia VB.NET vi VB6 ...........................................................37
Bài 4 Nhng chc nng i Tng mi ca VB.NET (phn I)..................................59
Bài 5 Nhng chc nng i Tng mi ca VB.NET (phn II) ................................68
Bài 6 Nhng chc nng i Tng mi ca VB.NET (phn III)...............................82
Bài 7 Nhng chc nng i Tng mi ca VB.NET (phn IV)...............................95
Bài 8 Nhng chc nng mi trong giao din ca s ca VB.NET (phn I)..............112
Bài 9 Nhng chc nng mi trong giao din ca s ca VB.NET (phn II).............124
Bài 10 Nhng chc nng mi trong giao din ca s ca VB.NET (phn III) .........134
Bài 11 Nhng chc nng mi trong giao din ca s ca VB.NET (phn IV) .........144
Bài 12 Nhng chc nng mi trong giao din ca s ca VB.NET (phn V) ..........161
Các bài tp Microsoft .NET 2
Bài 1
Microsoft .NET Framework
Cài đt Visual Studio.NET Beta 2
Visual Studio.NET nm trong 3 CDs, gm có 4 files:
• EN_VS_NET_BETA2_WINCUP.exe
• EN_VS_NET_BETA2_CD1.exe
• EN_VS_NET_BETA2_CD2.exe
• EN_VS_NET_BETA2_CD3.exe
Chy EN_VS_NET_BETA2_WINCUP.exe đ Unzip nó vào mt folder
trong mt harddisk (eg: E:\CD\WINCUP).
Ln lt chy EN_VS_NET_BETA2_CD1.exe,
EN_VS_NET_BETA2_CD2.exe và EN_VS_NET_BETA2_CD3.exe đ
Unzip chúng vào chung mt folder trong mt harddisk (eg: E:\CD ).
Vic Unzip files có th rt lâu, bn phi kiên nhn ch cho đn khi nó kt
thúc. Nu không, khi cài đt có th b than phin là thiu files.
K đó, trc ht chy Setup.exe ca Windows Component Update nh
di đây, click No khi Warning dialog hin ra:
Tip theo, chy Setup.exe ca Visual Studio.NET:
Bn nên có CPU Pentium III, 500MHz tr lên, vi 256 MB RAM và ít
nht 10GB Harddisk. V OS bn nên dùng Windows 2000 (Professional
Các bài tp Microsoft .NET 3
hay Server) hay Windows XP. Lý do chính là các versions Windows này
h tr Unicode và có Internet Information Server (IIS) h tr ASPX đ ta
dùng cho ASP.NET.
M các Samples ca QuickStart
Trc khi expand Samples ca Quickstart bn cn phi cài đt IIS. Nu
cha làm vic y bn b CD ca Windows2000 hay WindowsXP vào đ
install IIS component.
QuickStart Samples ca .NET Framework cha các gii thích cn bn và
nhiu thí d. expand các Samples doubleclick Webpage
Starthere.htm nh trong hình di đây:
Khi trang Web ca QuickStart hin ra, click QuickStart, tutorials and
samples ri sau đó theo ch dn tng bc.
Trang Framework SDK QuickStart Tutorials cho ta các bài tp ca
ASP.NET, Windows Forms và How Do I...
Nh đ nguyên các folders ca Unzipped files (E:\CD, E:\CD\WINCUP),
đng delete chúng, vì .NET s còn dùng chúng. Ngoài ra, nu sau này
.NET b corrupted vì conflict vi các application software khác, bn có
th cài đt .NET li.
Gii hn ca Software Tools hin gi
Các bài tp Microsoft .NET 4
Architect ca application software hin gi có nói chung ba tng (three
tiers): tng giao din (Presentation Tier), tng gia (Middle Tier) và tng
d kin (Data Tier):
Presentation Tier: Trong desktop Client ta dùng VB6 và ni vi middle
tier qua DCOM. Trong browser based Client ta dùng Javascript hay Java
applet. T browser based Client ta dùng http đ ni vi middle tier qua
IIS/ASP (có th dùng COM đây).
Middle Tier: Cha các rules đ validate data trên client và các business
rules khác. Ta dùng VB6 đây, nhng cách trin khai COM vi nhng
Object Oriented Programming concepts rc ri hn bình thng. Ta phi
thit k sao cho các components scale well (dùng cho mi c). Có khi
dùng Microsoft Transaction Server trên Windows NT hay COM+
Services trên Windows 2000. Lp ráp các versions ca components là
mt thách thc ln.
Nhiu khi middle tier còn nói chuyn vi các database qua HTTP, ADO
và CDO (Collaborative Data Objects), .v.v..
Data Tier: Thng là relational database nh Microsoft SQL Server hay
Oracle. Ngoài ra còn có Exchange hay các database xa ca mainframe.
Do đó ta thy:
• Desktop tools không thích hp cho Distributed System
hay Internet
Phi dùng nhiu th codes nh VB6 Code, VBScript,
JavaScript, Dynamic HTML, Cascading Style Sheet,
VC++, Stored Procedures (Transact-SQL trong
SQLServer hay PL-SQL trong Oracle).
Tùy thuc quá nhiu vào central database: Ngay c ADO dù là tin dng
cng đòi hi Client luôn luôn connect vi Server. iu này không thích
Các bài tp Microsoft .NET 5
hp cho Internet applications, vì bn cht ca Internet là stateless (không
gi trng thái), mi ln cn làm vic mi connect li mt chút thôi.
• DLL "Hell": Các ActiveX cn phi đc registered
vi Windows Registry, ch có mt version đc chp
nhn. Nu version mi nht ca mt DLL không
compatible vi các versions trc đó mà applications
trên máy đang cn thì có rc ri.
Gii hn ca VB6
• Thiu kh nng inheritance (tha k) và mt s Object
Oriented features khác.
• Kh nng Error handling gii hn: On Error Goto ...,
On Error Resume Next
Các bài tp Microsoft .NET 6
• Nhiu khi cn phi gi Windows API đ làm nhng
vic VB6 không h tr: vic này không t nhiên và
đôi khi nguy him.
• Không có multi-threading: không th đoán trc
response ca code chy trong các windows ca cùng
mt VB6 application. Ngay c gii quyt vn đ
multitasking bng Timers cng không đáng tin cy.
• Không d dùng chung vi các ngôn ng khác nh
VC++.
• Không tin cho Web development: WebClass không
thành công lm. Ít ai chu cho ta cài ActiveX trên máy
ca h.
.NET Framework
.NET đc developed t đu nm 1998, lúc đu có tên là Next
Generation Windows Services (NGWS). Nó đc thit k hoàn toàn t
con s không đ dùng cho Internet. Vin tng ca Microsoft là xây dng
mt globally distributed system, dùng XML (cha nhng databases tí
hon) làm cht keo đ kt hp chc nng ca nhng computers khác nhau
trong cùng mt t chc hay trên khp th gii.
Nhng computers này có th là Servers, Desktop, Notebook hay Pocket
Computers, đu có th chy cùng mt software da trên mt platform duy
nht, đc lp vi hardware và ngôn ng lp trình. ó là .NET
Framework. Nó s tr thành mt phn ca MS Windows và s đc port
qua các platform khác, có th ngay c Unix.
Mc du hãy còn là Beta, .NET Framework rt stable và Visual
Studio.NET rt ít bugs, có th dùng cho software development ngay t
bây gi. Hin nay đã có mt s sách v lp trình .NET do
Wrox và
Oreilly xut bn.
Các phn chính ca Microsoft.NET Framework:
.NET application đc chia ra làm hai loi: cho Internet gi là ASP.NET,
Các bài tp Microsoft .NET 7
gm có Web Forms và Web Services và cho desktop gi là Windows
Forms.
Windows Forms ging nh Forms ca VB6. Nó h tr Unicode hoàn
toàn, rt tin cho ch Vit và tht s Object Oriented.
Web Forms có nhng Server Controls làm vic ging nh các Controls
trong Windows Forms, nht là có th dùng codes đ x lý Events y ht
nh ca Windows Forms.
im khác bit chánh gia ASP (Active Server Pages) và ASP.NET là
trong ASP.NET, phn đi din visual components và code nm riêng
nhau, không ln xn nh trong ASP. Ngoài ra ASP.NET code hoàn toàn
Object Oriented.
Web Services ging nh nhng Functions mà ta có th gi dùng t các
URL trên Internet, thí d nh Credit Card authorisation.
ADO.NET là mt loi cache database nho nh (gi là disconnected
database) đ thay th ADO. Thay vì application connects vnh vin vi
database m qua ADO, application trong .NET làm vic vi portable
database ch cha mt hai tables, là copy t database m. Khi nào cn,
portable database này (ADO.NET) s đc reconciled vi database m đ
update các thay đi. Hai tables trong ADO.NET có th đc related nhau
trong Master/Details relationship. Vì ADO.NET có cha original data
ln data mi nht nên Rollback trong ADO.NET rt d dàng và nh ký.
XML đc ym tr ti đa. Nm phía sau ADO.NET là XML. XML có
th là Table of records trong ADO.NET hay Tree of nodes trong DOM
(Document Object Model).
IO đc h tr bng toàn b Stream k c Memory Stream và
StreamReader/StreamWriter. Thêm vào là DataFormatting cho
Serialisation đ cha Object xung binary file hay text file.
TCP/IP và http là hai protocols thông dng nht trong .NET, nhng
chúng làm vic phía sau sân khu giúp ta gi mt remote procedure (nm
trên computer khác) d dàng nh mt local procedure. K thut y gi là
Remoting.
Các bài tp Microsoft .NET 8
Security h tr Cryptography, Permissions và Policy.
Diagnostics cho ta Debug và Trace.
Threading rt tin và đn gin đ implement Lightweight Process. Vn
đ Timing trong .NET program rt linh đng, hiu qu và chính xác.
Vic thit k Common Language Runtime nhm vào các mc tiêu chính
sau đây:
• Vic trin khai đn gin và nhanh hn: developers s
dành thì gi quyt đnh ráp nhng software
components nào li vi nhau nhiu hn là lp trình
tht s.
• Các công tác thit yu ("plumbing") nh memory
management, process communication .v.v. đc lo
liu t đng.
• Các công c h tr rt đy đ (no more API): .NET
Framework Base classes rt phong phú cho file,
network, serialisation, mã hóa, XML, database, v.v..
• Cài đt đn gin và an toàn (no more DLL "hell"): ch
cn xcopy files, ging nh thi vàng son ca DOS. Lý
do là .NET application chy trên .NET framework,
mt khi ta đã cài .NET framework vào máy ri thì có
đy đ mi .DLL cn thit. Có l trong tng lai
Microsoft cài .NET framework chung vi Windows.
• Dùng cho t WindowsCE đn Desktop, đn Web
(scalability).