1. Trang chủ
  2. » Luận Văn - Báo Cáo

luận văn công nghệ thông tin tìm hiểu c# và viết chương trình ứng dụng với webservice

75 625 1

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 75
Dung lượng 1,45 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Gom Rác : Một trong những dịch vụ quan trọng nhất mà CRL cung cấp là cơ chế gom rác [garbage collection ] .Trong C và C++ ,nếu một đối tượng được lập minh dụ [instantiated ] ,bộ nhớ mà n

Trang 1

LỜI CẢM ƠN

Suốt quá trình học tập trong trường đại học vừa qua, chúng em đã

được quý thầy cô cung cấp và truyền đạt tất cả kiến thức chuyên môn cần

thiết và quý giá nhất Ngoài ra, chúng em còn được rèn luyện một tinh thần

học tập và làm việc độc lập, sáng tạo Đây là tính cách hết sức cần thiết để

có thể thành công khi bắt tay vào nghề nghiệp trong tương lai

Luận văn tốt nghiệp là cơ hội để chúng em có thể áp dụng, tổng kết

lại những kiến thức mà mình đã học Đồng thời, rút ra những kinh nghiệm

thực tế và quý giá trong suốt quá trình thực hiện đề tài Sau một học kỳ

chúng em tập trung công sức cho đề tài và cùng làm việc cực lực với nhau,

đặc biệt là nhờ sự chỉ đạo và hướng dẫn tận tình của thầy

Nguyễn Chánh Thành cùng với các thầy cô trong khoa, đã giúp cho chúng

em hoàn thành đề tài này một cách thuận lợi và gặt hái được một số kết quả

khá khả quan Bên cạnh những kết quả khiêm tốn mà chúng em đạt được,

chắc chắn không tránh khỏi những sai lầm, thiếu sót khi thực hiện luận văn

của mình, kính mong thầy cô thông cảm và tha thứ Sự phê bình, góp ý của

quý thầy cô sẽ là những bài học kinh nghiệm rất quý báu cho công việc thực

tế của chúng em sau này

Là sinh viên ngành máy tính, chúng em rất tự hào về khoa mà mình

đang theo học, tự hào về tất cả các thầy cô của mình

 Hỗ trợ các công cụ rất đầy đủ : XML,cơ sở dữ liệu

,ASP.NET,VC++,VB.NET……

Một lần nữa, chúng em xin chân thành cảm ơn công lao dạy dỗ của

quý thầy cô Kính chúc quý thầy cô mạnh khỏe, tiếp tục đạt được nhiều

thắng lợi trong nghiên cứu khoa học và sự nghiệp trồng người

Trân trọng kính chào!

Sinh viên thực hiện

Lê Phước Hùng

Trang 2

MỤC LỤC

Lời cảm ơn 1

Mục lục 2

Chương I : Giới Thiệu 3

Phần 1 : NET FrameWork 3

Phần 2 :Tìm Hiểu Về Visual C# 8

Phần 3 : ADO.NET 22

Phần 4 : SQL Server 27

Phần 5 : Dịch Vụ Windows Services 32

Phần 6 : WebService và Các Công Nghệ Liên Quan 36

Phần 7 :Giới thiệu XML 50

Chương II : Phân Tích và Thiết Kế hệ Thống 59

Chương III : Demo và hình ảnh 67

Chương IV : Tổng kết và đánh giá 71

Tài liệu tham khảo 73

Trang 3

CHƯƠNG I :

GIỚI THIỆU

PHẦN 1 : NET FrameWork

.NET FrameWork là một nền tảng cho thế hệ máy tính mới được thiết kế bởi Microsoft nhằm mục đích đơn giản hoá việc phát triển các ứng dụng hiện đại như :

 Những chương trình mà ứng dụng cách viết theo Microsoft.NET , sử dụng giao diện đồ hoạ GUIs phức tạp phía người dùng đầu cuối

 Những ứng dụng hay chương trình sử dụng Internet

 Các ứng dụng truy xuất cơ sở dữ liệu ……

Thật ra, NET cài đặt một chế độ biên dịch nhiều tầng : trước tiên ,chương trình sẽ được biên dịch sang một dạng trung gian khả chuyển và đến lúc được thực thi ,nó sẽ được biên dịch tức thời (just-in-time Compile hay còn gọi là JIT compile) sang dạng thực thi cuối cùng Có hai thành phần chính đối với NET FrameWork :Môi trường thực thi ngôn ngữ chung (Common Language Runtime (CLR)) và thư viện các lớp NET FrameWork

Trang 5

Ứng dụng NET được chia ra làm hai loại: cho Internet gọi là ASP.NET, gồm có Web Forms và Web Services và cho destop gọi là Windows Forms XML được hỗ trợ tối đa , có hai giao thức được sử dụng thông thường nhất trong NET là TCP/IP và HTTP

Việc thiết kế môi trường thực thi ngôn ngữ chung gồm những mục tiêu chính sau:

 Việc triển khai đơn giản và nhanh hơn :người phát triển sẽ dành nhiều thời gian quyết định nối những thành phần của phần mềm nào lại với nhau nhiều hơn là lập trình thật sự

 Các công tác thiết yếu như : quản lý bộ nhớ ,xử lý thông tin … được giúp đỡ một cách tự động

 Hỗ trợ các công cụ rất đầy đủ XML,cơ sở dữ liệu ,……

 Cài đặt đơn giản và an toàn, hỗ trợ mọi tập tin DLL

 Sử dụng cho từ WindowsCE đến Destop , và Web

Sơ đồ mô tả môi trường thực thi ngôn ngữ

chung (CLR)

Siêu dữ liệu (Metadata): Các lớp Net là những lớp có khả năng tự mô tả,chúng mang thông tin miêu tả đi cùng với mình ngay trong file đã biên dịch ra EXE hoặc DLL.Thông tin này được gọi là siêu dữ liệu(Metadata)

Trang 6

Môi trường thực thi ngôn ngữ chung(CLR): là trung tâm điểm của NET FrameWork, mà NET cung cấp để quản lý các lớp managed Extensions C++ ,nó là cơ chế để chạy các tính năng của NET Trong Net mọi ngôn ngữ lập trình đều được biên dịch ra ngôn ngữ trung gian (Microsoft Intermediate Langage(IL)) ,thực thi ngôn ngữ cuả Microsoft có tên Microsoft Intermediate Language ,hoặc MSIL Sau đó mã IL này được biên dịch đúng lúc thành mã bẩm sinh vào lúc chạy Điều này có nghĩa là ,bất kể ngôn ngữ ban đầu của mả nguồn ,các tập tin thi hành và DLL của NET luôn được triển khai trong IL ,do đó không có điểm khác biệt nào giữa các thành phần thoạt đầu được viết bằng C# và những thành phần được viết bằng VB.NET

Nhờ bắt buộc mọi ngôn ngữ đều phải dùng cùng các loại cùng hệ thống các kiểu dữ liệu thông dụng (Common Type Sytem (CTS)), CLR có thể kiểm soát mọi giao tiếp (interface), gọi giữa các thành phần và cho phép các ngôn ngữ có thể kết hợp với nhau Tức trong NET , Chương trình VB.NET có thể kế thừa C# và ngược lại một cách tự nhiên

Gom Rác : Một trong những dịch vụ quan trọng nhất mà CRL cung cấp là

cơ chế gom rác [garbage collection ] Trong C và C++ ,nếu một đối tượng được lập minh dụ [instantiated ] ,bộ nhớ mà nó sử dụng cần được giải phóng trước khi có thể dùng lại Nếu không thể thực hiện điều naỳ ,ta sẽ bị

“rò rỉ bộ nhớ ” [ memory leak ]-hệ thống không thể thu hồi bộ nhớ rảnh.khả năng vận hành của ứng dụng hiển nhiên bị xuống cấp CRL giải quyết sự cố này bằng cách thực thi một bộ gom gác Theo quãng thời gian định kỳ (khi không còn chỗ tên vùng phân tạm [head]) ,bộ gom gác sẽ kiểm tra tất cả các tham chiếu đối tượng ,và phóng thích bộ nhớ được lưu giữ bởi các đối đượng đã hết hoạt vi [spoce] và có thể không còn ứng dụng truy cập Điều này miễn cho lập trình viên khỏi phải huỷ các đối tượng tường minh ,và giải quyết sự cố rò rĩ bộ nhớ

Thư viện các lớp của NET FrameWork : Là một thư viện các lớp hướng đối tượng cung cấp hầu hết dụng cụ và phương tiện cần thiết để viết nhiều chưong trình ứng dụng đa dạng Thư viện các lớp NET FrameWork cung cấp một tập các lớp mà có thể sử dụng từ bất kì ngôn ngữ NET nào , vì nó được cài đặt để làm việc ở cấp ngôn ngữ IL

Trang 7

Đặc tả ngôn ngữ thông dụng (Common Language Specification (CLS)) :là tập hợp những qui tắc và ràng buộc ,mà trình biên dịch và thư viện mà người lập trình viết ra cần phải tuân theo để bảo đảm cho ngôn ngữ và mã sinh ra có thể tích hợp được với những ngôn ngữ NET khác CLS là một tập con của CTS ,và nếu một ngôn ngữ hoặc thư viện tuân thủ theo CLS thì nó hoàn toàn tương hợp với những ngôn ngữ thuộc họ.NET

Assembly(Hợp ngữ): Ứng dụng NET xây dựng từ các gói hợp ngữ (assemblies) là đơn vị cơ bản của việc đóng gói và nâng cấp phiên bản Gói hợp ngữ chứa đựng mã IL ( ngôn ngữ trung gian),siêu dữ liệu dùng để mô tả gói hợp ngữ và nội dung của nó,cùng với những file khác cần cho quá trình thực thi.Nó có thể là một tập tin thi hành (.exe ),một DLL,một ứng dụng web ASP.NET được biên dịch ,hay dịch vụ web

Trang 8

Sơ đồ cấu trúc tổng quát của gói hợp ngữ

PHẦN 2 : TÌM HIỂU VỀ VISUAL C#

1 C# là gì ?

C# là một ngôn ngữ hiện đại hướng đối tượng, là một ngôn ngữ lập trình mới duy nhất phù hợp với các môi trường ở đó năng suất ,năng lực , và Internet là quan trọng Nó có nguồn gốc từ trong C,C++,java ,và trong một mức độ giới hạn của ngôn ngữ Visual Basic

Với C# ta có thể tạo các dạng đề án khác nhau : Các ứng dụng Console ,các ứng dụng Windows,các ứng dụng ASP.NET ,các thành phần NET ,và Web Services Các đề án này có thể phối hợp với nhau để thực thi các ứng dụng n tầng ,có phân phối

2 C# và Các Ngôn Ngữ Khác

+ C# và Java :

- Chắc chắn các đoạn mã C# có thể rất giống với các đoạn mã Java

tương đương về công năng Ví dụ ,cả 2 ngôn ngữ ủng hộ tính năng mã

hoá tron gói [one-stop coding] ,gom nhóm các lớp ,các giao diện và

cách thực thi với nhau trong một tập tin để các nhà phát triển có thể hiệu chỉnh mã dễ dàng hơn C# và Java cũng điều quản các đối tượng khá giống nhau : thông qua các tham chiếu thay vì các biến trỏ

- C# giữ lại nhiều tính năng mạnh của C++ hơn Ví dụ ,C # sử dụng tính năng qúa tải toán tử [operator overloading] , các kiểu điểm doanh an toàn kiểu ,các tính năng mà java hoàn toàn bỏ qua

- Một khiá cạnh mà java vượt trội hơn C# đó là sự độc lập về nền tảng Trên lý thuyết , với bytecode java nó có thể đựơc thực thi trên bất kỳ nền tảng nào được trang bị một maý ảo java Trong khi C# sử dụng một CLR (Common Language Runtime) cũng có tính năng tương tự

Trang 9

như máy aỏ của Java nhưng CLR chỉ thực thi trên nền tảng Windows mà thôi

+ C# và VB6, VB.NET :

- Những điễm khác biệt giữa VB6 và VB.NET là sâu sắc

Với VB6 ,C # mượn cách tiếp cận của VB6 để thiết kế biểu mẩu ,thiết kế giao diện người dùng ; trong cả hai ngôn ngữ ,các nhà phát triển xây dựng các giao diện người dùng bằng cách kéo các điều khiển từ một hộp công cụ ,thả chúng lên các biểu mẩu ,và viết các trình điều quản sự kiện cho chúng C# khai thác tiến trình với hiệu quả cao ,không những áp dụng nó trong việc phát triển các giao diện người dùng má còn cấu thành các đối tượng doanh nghiệp Đây là điểm giống nhau thực sự duy nhất giữa C# và VB6 ,bởi các khả năng đối tượng của VB6 không thể so sánh được với các khả năng của C #

Với VB.NET ,đây là phiên bản kế tiếp của VB ,mặc dù được tăng cường các đặc cụ đối tượng của VB trông giống như C# với các từ khóa khác.Thực tế ,các chuyên khu trên web đã cho thấy cùng mã nguồn biên dịch bằng trình biên dịch VB cũng sẽ biên dịch bằng trình biên dịch C# sau khi tay toàn cục vài từ khoá

Ưu điểm nổi bật nhất của C# so với VB.NET là nó chứa các khối mã C++ nhúng,nhanh,hiệu quả

Một ưu điểm đáng kể cuả C# đó là nó có thể dễ dàng thực hiện các lệnh gọi Windows API

Ngoài ra,tính đơn giản của C# còn thể hiện ở cách mà nó phân gỉai các sự phụ thuộc vào các thành phần bên ngoài C++ yêu cầu các thành phần tham chiếu ở 2 nơi : 1)Trong các câu lệnh #include trong mã nguồn của đề án và 2)trong danh sách tham chiếu của đề án khách.Để dùng một thành phần phục vụ .NET từ một hệ khách C# ,bạn chỉ cần bổ sung một tham chiếu vào thành phần với bằng lệnh đơn Add Reference ,hoặc

Trang 10

Solution Explorer Không cần #include một tập tin phần đầu.Như vậy ,trong cách tiếp cận đơn giản của nó với các phụ thuộc bên ngoài ,C# giống VB6 nhiều hơn C++

- Ngoài việc đơn giản hơn C++,C# cũng an toàn hơn-cho cả nhà phát triển lẩn môi trường thi hành C# an toàn hơn cho nhà phát triển ở chổ với nó ta viết mã khó gặp lổi hơn Các ví dụ về sự an toàn này bao gồm việc C# loại bỏ các thành ngữ dễ gặp lổi như các macrô tiền xử lý và các câu lệnh switch … case chuồi qua,cũng như sự cố chấp của trình biên dịch buộc các biến phải được khởi tạo trước khi các giá trị chủa chúng được tham chiếu C# an toàn hơn cho môi trường phát triển ở chổ nó loại bỏ các biến con trỏ và sự dựa cậy của nó vào tiến trình gom gác cài sẳn khiến không còn rò rỉ bộ nhớ

- C# tỏ ra nuâng suất hơn so với C++ ở chổ nó chấp nhận phương pháp hộp công cụ /điều khiển /biểu mẩu để xây dựng các ứng dụng GUI ,nhờ đó có thể nhanh chóng hoàn tất việc thiết kế giao diện người dùng

Giống như C# ,Jscript thừa kế một cú pháp xúc tích và lịch lảm từ C

Khác với C#,Jscript yếu về kiểu;tất cả các biến Jscript đều được khai báo bằng từ khoá Var và theo mặc định có thể chuyển đổi từ gía trị này sang giá trị khác

Do C# sạch hơn và mạnh hơn Jscript ,nên hầu hết các nhà phát triển hướng C sẽ chọn C# nhiều hơn Jscript cho các ứng dụng phía phục vụ.Tuy nhiên , do Netcape Navigator lẫn Internet Explorer đều có thể nhận ra Jscript nên vẫn có thể dùng Jscript để phát triển Các điều khiển web phía khách

Trang 11

3 Chúng Ta Có thể Làm gì Với C #?

 Tạo giao diện người sử dụng

Giao diện người sử dụng có lẽ là thành phần quan trọng nhất của một ứng dụng Đối với người sử dụng, giao diện chính là ứng dụng ; họ không cần chú ý đến thành phần mã thực thi bên dưới Ứng dụng của chúng ta có thể phổ biến được hay không phụ thuộc vào giao diện

 Sử dụng những điều khiển chuẩn của C#

Ta dùng những điều khiển để lấy thông tin mà người sử dụng nhập vào, và để hiển thị kết xuất Những điều khiển mà ta có thể dùng trong ứng dụng bao gồm hộp văn bản, nút lệnh, và hộp danh sách,… Những điều khiển khác cho ta truy xuất những ứng dụng khác, xử lý dữ liệu của nó như là một thành phần mã trong ứng dụng của bạn

 Lập trình với những đối tượng

Những đối tượng là thành phần chủ yếu để lập tình Visual Basic Những đối tượng có thể là winform, những điều khiển hay cơ sở dữ liệu

 Đáp ứng những sự kiện chuột và bàn phím

Những ứng dụng C# có thể đáp ứng một lượng lớn sự kiện chuột và bàn phím Ví dụ form, hộp ảnh, và những điều khiển ảnh có thể phát hiện vị trí con trỏ chuột, có thể quyết định phím trái hay phím phải được nhấn, và có thể đáp ứng những tổ hợp của phím chuột với phím Shift, Ctrl, hay Alt Sử dụng những điều khiển phím, ta có thể lập trình những điều khiển và form để đáp ứng các hành động phím hoặc phiên dịch và xử lý mã Ascii của ký tự

 Gỡ rối mã và quản lý lỗi

Đôi khi có những lỗi xảy ra bên trong mã của ứng dụng Những lỗi nghiêm trọng có thể là nguyên nhân một ứng dụng không đáp ứng lệnh, thông thường yêu cầu người sử dụng khởi động lại ứng dụng, và không lưu

Trang 12

lại những gì ta đã làm Quá trình tìm ra và sửa lỗi gọi là gỡ rối C# cung cấp nhiều công cụ giúp chúng ta phân tích ứng dụng làm việc như thế nào Những công cụ gỡ rối đặt biệt hữu ích trong việc tìm ra nguồn gốc lỗi, nhưng chúng ta cũng có thể dùng những công cụ này để kiểm tra chương trình hoặc tìm hiểu những ứng dụng khác nhau làm việc như thế nào

 Xử lý ổ đĩa, thư mục và file

Khi lập trình trong Windows, nó rất quan trọng để có khả năng thêm, di chuyển, tạo mới hoặc xóa những thư mục và file, lấy thông tin về và xử lý ổ đĩa C# cho phép chúng ta xử lý ổ đĩa, thư mục và file bằng hai phương pháp : qua những phương thức cũ như là điều lệnh Open, Write, và qua một tập hợp các công cụ mới như FSO (File System Object)

 Thiết kế cho việc thi hành và tính tương thích

C# chia xẻ hầu hết những tính năng ngôn ngữ trong VS.NET cho những ứng dụng, bao gồm :các ứng dụng Console,các ứng dụng Windows,các đề án ASP.NET,và các dịch vụ web,…

 Với ứng dụng Console : công dụng phổ biến nhất của ứng dụng console đó là trắc nghiệm các thành phần khác

 Với ứng dụng Windows :Khi thi hành ,một chương trình WinForm hiển thị các cửa sổ để người dùng có thể tương tác bằng cách điều tác nhiều điều khiển :hộp liệt kê,nút ,và hộp văn bản khác nhau…

 Các đề án ASP.NET :

+ Active Server Pages (ASP) là một công nghệ phổ dụng của Microsoft để tạo các ứng dụng gốc trình duyệt.Một ứng dụng ASP bao gồm một loạt các trang ASP lưu trữ chung với nhau trong một thư mục trên một hệ phục vụ Web.Mỗi trang là một tập tin asp chứa các khối HTML pha trộn với các khối VBScript hoặc Jscript phiá phục vụ.Khi một trình duyệt yêu cầu một trang ASP,hệ phục void bàn giao HTML trong trang cho trình duyệt yêu cầu và xử lý các chùm ký mã phía phục vụ mà nó gặp khi nó phục vụ tư liệu Như vậy ,trong các khối ký mã phía phục vụ các trang ASP có thể triệu gọi các đối tượng doanh nghiệp để truy nạp dữ liệu từ cơ sở dữ liệu hoặc để thực hiện các dịch vụ khác ,tạo các trang động có nội dung thay đổi

Trang 13

+Với ASP.NET hứa hẹn tăng cường đáng kể khả năng khả năng vận hành của ASP bằng cách cho phép các nhà phát triển tạo các trang được biên dịch [compiled] thay vì được diễn dịch [interpreted] Đúng vậy ;thay vì dùng Jscript hoặc VBScript để mã hoá các trang được diễn dịch lại mỗi lần chúng được yêu cầu ,ta có thể dùng các ngôn ngữ NET có đầy đủ tính năng (kể cả C#) để mã hoá các trang biên dịch thành IL Lần đầu tiên khi một trang ASP.NET như vậy được yêu cầu ,mã ASP.NET được phiên dịch thành một tập tin cs ( hoặc một vb) mà sẽ được biên dịch sau đó

Trình biên dịch Just-in-Time sẽ chuyển đỗi IL kết qủa thành mã bẩm sinh ,lập cache nó để phòng trường hợp trang được yêu cầu lại Với cách tiếp cận này ,các trang ASP.NET sẽ chuyển đạt nhanh hơn nhiều so với trang ASP trước đây

 Các dịch vụ Web : với các đề án WebService ,cung cấp thông tin cho các thành phần và các ứng dụng khác Nói một cách đơn giản ,một dịch vụ Web là một lớp có một trình tiền tiêu web.Một trang ASP.NET kết hợp với lớp sẽ cho phép các lớp khác gọi các phương pháp trên lớp đó qua Internet Dạng thức của các yêu cầu,và dạng thức của các giá trị trả về là giao thức SOAP.Trong WWW mà Microsoft hình dung,tất cả các dịch vụ web khắp thế giới sẽ cung cấp cho các ứng dụng khách tất cả các kiểu thông tin động,từ gía cả thị trường chứng khoán đến các baó cáo thời tiết

Nét đẹp của một dịch vụ web đó là khả năng dễ dàng tạo ra nó

4 Tóm Tắt Ngôn Ngữ

4.1 Biến

Biến được dùng để lưu tạm thời các giá trị tính toán trong quá trình xử lý chương trình

 Cách khai báo biến

Khai báo một biến trong C# có cú pháp như sau :

Type variable-name[=initialization]

Ở đây type là kiểu biến ,va variable-name là tên biến có thể chứa chữ cái,số,và dấu gạch dưới.Tuy nhiên tên biến phải bắt đầu bằng hoặc là dấu gạch dưới hoặc là chử cái và không được bắt đầu bằng số

Dưới đây là các ví dụ về khai báo biến :

int _999 ;//hợp lệ

int a_dog ;//hợp lệ

int 123_go ;//không hợp lệ

 Phạm vi sử dụng biến

Trang 14

Phạm vi sử dụng biến tùy thuộc cách ta khai báo và chỗ ta đặt dòng lệnh khai báo biến

 Nếu ta khai báo trong phần General, biến có thể được dùng ở bất kỳ đoạn lệnh nào trong from và cũng chỉ mất đi khi from được giải phóng khỏi bộ nhớ

 Nếu ta khai báo biến trong phần viết lệnh cho một sự kiện của một đối tượng (tức khai báo giữa dấu “{“ bắt đầu mã lệnh và dấu “}” kết thúc của mã lệnh đó) thì biến chỉ tồn tại và dùng được trong phạm vi dấu “{“ bắt đầu mã lệnh và dấu “}” kết thúc của mã lệnh đó mà thôi Biến như vậy gọi là biến riêng hay biến nội bộ

Nếu ta dùng từ khóa Public để khai báo biến , biến sẽ tồn tại trong suốt thời gian thực hiện chương trình và có thể dùng được trong bất cứ đoạn lệnh nào của chương trình Biến như vậy gọi là biến chung hay biến toàn cục

4.2 Các kiểu dữ liệu C#

C# có hai nhóm kiểu dữ liệu riêng biệt ,có tên các kiểu giá trị và các kiểu tham chiếu

Các kiểu gía trị gồm có :

ºCác kiểu đơn giản (int ,char,….)

ºstructs

ºenums

Các kiểu định sẳn

Tên kiểu Mô Ta’

sbyte Nguyên có dấu 8-bit

short Nguyên có dấu 16-bit

Int Nguyên có dấu 32-bit

Long Nguyên có dấu 64-bit

Byte Nguyên không dấu 8-bit

Ushort Nguyên không dấu 16-bit

Uint Nguyên không dấu 32-bit

Ulong Nguyên không dấu 64-bit

Float Số chấm động có độ chính xác đơn

Double Số chấm động có độ chính xác đôi

Bool Kiểu logic-true hay false

Trang 15

Char Ký tự Unicode

Decimal số thập phân có 28 chử số có nghĩa

Các kiểu tham chiếu được truy cập gián tiếp bằng các biến tham chiếu trỏ đến đối tượng.Do trong C# ngăn cấm các biến trỏ nên nếu muốn dùng các biến trỏ ta chỉ có thể thực hiện trong mả ‘không an tòan’ (unsafe) ở đó cơ chế gom gác không hoạt động

C# cung cấp hai kiểu tham chiếu định sẳn object và string.Tất cả các lớp khác đều dựa vào object ,cho dù chúng không đòi tính thừa kế từ các lớp khác

4.3 Các toán tử trong C#

Bảng dưới đây liệt kê tất cả các toán tử hổ trợ bởi C# :

Phạm Trù Các toán tử

Truy cập thành viên

Lập chỉ mục [ ]

Aùp đổi ( )

Taọ đối tượng new

4.4 Cấu trúc tuyển và cấu trúc lặp

4.4.1 Cấu trúc phát biểu lệnh (statements)

 Phát biểu If

Cú pháp phát biểu if như sau :

Cú pháp 1 :

If( conditional-expression)

Trang 16

Phát biểu lệnh đơn ;

Switch <biến hay biểu thức>{ ‘xét biến hay biểu thức này

Case <các giá trị> ‘Nếu biến hay biểu thức bằng các giá trị này

<các câu lệnh> ‘thì thực hiện đoạn lệnh này

break ;

Case <các giá trị>

<các câu lệnh>

Trang 17

4.4.2 Các cấu trúc lặp

 Mệnh đề While :

Cú pháp :

While (<biểu thức điều kiện> ){

<các câu lệnh> ;

}

 Vòng lặp do … while

Cú pháp :

Do{

<các câu lệnh> ;

}while(< biêủ thức điều kiện>) ;

 Mệnh đề foreach :

 Câu lệnh For :

Cú Pháp :

Một câu lệnh for được điều khiển bởi ba biểu thức trong dấu ngoặc một biểu thức khởi tạo [initilizer],một biểu thức điều kiện ,và một biểu thức lập :

đơn-For(initilizer ;codition;iterator)

Statement ;

4.5 Gọi Các Thủ Tục (phương pháp):

Tiến trình định nghiã và gọi các Thủ Tục trong C# theo sát mô hình C++ /Java

Điều này có nghĩa là mọi thủ tục phải có một khai báo tuân thủ khuôn mẩu dưới đây ,ở đó các mục trong các dấu ngoặc vuông là tùy chọn :

[modifier] return-type method-name([parameterlist])

{

}

Trang 18

Mọi thủ tục phải có một kiểu trả về ;Nếu thủ tục không trả về một giá trị ,kiểu trả về của nó là void.Một thủ tục có thể không chấp nhận tham số nào ,trong trường hợp đó theo sau tên thủ tục là các dấu ngoặc đơn trống

Theo sau khai báo thủ tục là thân thủ tục ,có dạng một khối mã (tức là các câu lệnh chứa trong các dấu “( )”

Ví dụ dưới đây nêu phần định nghĩa của square ,chấp nhận một giá trị float và trả về bình phương của nó :

4.6 Không Gian Tên (Namespace)

C# sử dụng không gian tên hổ trợ trợ cho việc cô lập và việc đóng gói các lớp (class),các giao diện ,và các struct có liên quan thành một đơn

vị (unit)

Kiến trúc .NET sử dụng các không gian tên(namespace) lồng nhau xuất phát từ không gian tên System Microsoft cũng đã cung cấp các lớp (class) ,và các giao diện được đặt dưới không gian tên (namespace) Microsoft dành cho chức năng riêng biệt của windows

Vi dụ : Using System ;//sử dụng không gian tên system

Trang 19

Sự lựa chọn thứ hai là sử dụng tên đầy đủ của một thực thể riêng biệt

Ví dụ ,lớp Console tồn tại bên trong không gian tên System Thay vì sử dụng chỉ thị using ,nó có thể dùng tên đấy đủ để thay vào ,như được trình baỳ sau đây :

System ConSole.WriteLine(“ abc“);

4.7 Arrays (Mảng) :

Trong C# ,Array (mảng) là đối tượng khá đặt biệt Tất cả các đối tượng kiểu mảng đều được ngầm định là kế thừa từ kiểu dử liệu System.Array Lớp cơ sở System.Array cung cấp rết nhiều phương thức được sử dụng trong qúa trình thao tác trên mảng

Cú Pháp sau đây được sử dụng để cấp phát một mảng cấp 1

Array-type[ ] var = new array-type [size]

Mảng trong C# sử dụng chỉ mục đếm từ 0

Mảng Array trong C# không nhất thiết là một chiều Cú pháp để khởi tạo các mảng đa chiều là một phần mở rộng đơn giản của trường hợp chiều đơn

Các Mảng đa chiều :

C# hổ trợ hai kiểu mảng đa chiều –chử nhật và răng cưa Trong mảng chử nhật ,mọi hàng có cùng chiều dài Mặc khác ,một mảng răng cưa đơn gỉan là một mảng các mảng một chiều mỗi mảng có thể có một chiều dài khác nhau nếu muốn

Một ví dụ minh hoạ Mảng đa chiều :

Using System;

Class Test

Trang 20

{

public static int main( )

{

int [,] arr2 ;//khai báo mảng chử nhật

int [ ][ ] arr4 ; // khai báo mảng 2 chiều răng cưa

int [ ] [ ][] arr5; // khai báo mảng 3 chiều răng cưa

arr2= new int[5,5] ;

C# cung cấp một số lớp ngoại lệ ,tất cả đều thừa kế từ lớp

System.Exception Các lớp ngoại lệ chung mà bạn có thể gặp khi viết

mã ứng dụng được tổng kết trong bảng sau :

Lớp Ngoại Lệ Nguyên Nhân

SystemException - Một kiểm tra thời gian chạy bị thất bại ;được dùng như một lớp cơ sở cho các

ngoại lệ khác

AccessException - Không thể truy cập một thành viên

kiểu,

Trang 21

Như một phương pháp hoặc trường

ArgumentException -Một đối số cho một phương pháp không Hợp lệ

ArgumentNullException -Một đối số null được truyền cho một Phương pháp không chấp nhận nó ArgumentOutOfRangeException - Gía trị đối số nằm ngoài miền

ArithmeticException -Sự cố tràn trên hoặc tràn dưới số học xảy

ra

DivideByZeroException -Đã gắng chia zero

FormatException -Dạng thức một đối số bị sai

IndexOutOfRangeException -Một chỉ mục nằm ngoài các cận

NotFiniteNumberException -Một số không hợp lệ

OutOfMemoryException -Không đủ bộ nhớ để thi hành

StackOverflowException - Một ngăn Xếp đã tràn

Để chặn bắt những ngoaị lệ trên ,ta dùng cú pháp try…catch :

Try {

//code có thể bị lỗi

}catch( System Exception se ){

//xữ lý một ngoaị lệ vừa phát sinh

}

Trang 22

PHẦN 3 : ADO.NET

1 ADO NET là gì ?

ADO.NET là một tập hợp các hàm API chiến lược của Microsoft cho phép truy cập dữ liệu theo mô hình phân tán hiện đại trên nền Microsoft ADO.NET chứa một tập các giao diện interface và lớp cho phép bạn làm việc với dữ liệu trong một phạm vi rất nhiều cơ sở dữ liệu bao gồm SQL Server ,Oracle,Sybase,Microsoft Access,…

1.1 Nhà cung cấp dữ liệu (ADO.NET Data Providers):

ADO.NET sử dụng khái niệm nhà cung cấp dữ liệu cho phép truy cập đến nhiều cơ sở dữ liệu khác nhau một cách hiệu quả Mỗi nhà cung cấp dữ liệu bao gồm các lớp cho phép kết nối với một kiểu cơ sở dữ liệu đặc biệt

.NET FrameWork bao gồm hai nhà cung cấp dữ liệu chính là:

Trang 23

 SQL Server NET data provider :Chứa các lớp cho phép truy cập một cách tối ưu hoá đến dữ liệu của Microsoft SQL Server 7.0 hoặc mới hơn

 OLEDB.NET :Chứa các lớp cho phép truy cập một cách tối ưu hoá đến dữ liệu của Microsoft SQL Server 6.5 ,đồng thời cho phép truy cập đến những cơ sở dữ liệu khác như Oracle,Syhase,Aceess…

1.3 Gói hợp ngữ ADO.NET:

Phần lớp các lớp của ADO.NET được chứa trong gói hợp ngữ System::Data ( trừ lớp XmlDataDocument, chứa trong System::Xml)

Trang 24

.Để sử dụng những gói hợp ngữ này ,bạn khai báo các phát biểu sau trong ứng dụng:

# using < System.Data.dll>

# using < System.XMl.dll>

Sau khi đã nhập vào những gói hợp ngữ này, bạn có thể nhập thêm những namespace theo yêu cầu khác của riêng ứng dụng

2 Tạo một ứng dựng kết nối :

Trong các kết nối đến cơ sở dữ liệu SQL Server Bạn sẽ sử dụng đối tượng SqlConnection để thiết lập kết nối này

Khi bạn đã có được kết nối ,bạn sẽ tạo đối tượng SqlCommand để đại diện cho câu lệnh SQL và thực hiện những nhiệm vụ sau:

 Thực thi phát biểu và nhận kết quả trả về là một giá trị đơn SqlCommand sử dụng phương thức ExecuteScalar cho mục đích này

 Thực thi phát biểu cập nhật cơ sở dữ liệu SqlCommand sử dụng phương thức ExecuteNonQuery cho mục đích này

 Thực thi phát biểu truy vấn cơ sở dữ liệu SqlCommand sử dụng phương thức ExecuteReader cho mục đích này ExecuteReader trả về đối tượng SqlDataReader cung cấp cơ chế truy xuất nhanh vào một hàng dữ liệu duy nhất trong kết quả truy vấn được Bạn sẽ sử dụng đối tượng SqlDataReader này để xử lý kết quả thu được

Ứng dụng ngắt kết nối (disconnected application)là một ứng dụng không cần duy trì kết nối thường xuyên với nguồn dữ liệu Ví dụ ,một người bán hàng có thể đòi hỏi ứng dụng khả năng truy cập dữ liệu trong cơ sở dữ liệu trung tâm ,thâm chí khi họ ra khỏi văn phòng

ADO.NET cung cấp lớp DataSet cho phép bạn khả năng truy cập được dữ liệu trong những ứng dụng ngắt kết nối

DataSet

DataTableCollection DataTable

DataColumnCollection DataColumn

Trang 25

DataRowCollection DataRow ConstraintCollection Constraint DataRelationCollection DataRelation

DataRelationCollection DataRelation

DataSet là một tập các đối tượng DataTable trong bộ nhớ và quan hệ

với DataTables Bạn có thể tạo nhiều DataTables trong một DataSet để nắm

giữ kết quả của câu truy vấn SQL

DataTable có một tập hợp các đối tượng DataColumn Những

DataColumn này là thông tin mô tả cột dữ liệu như tên cột,kiểu dữ liệu, giá

trị

DataTable có một tập hợp các đối tượng DataRow Những DataRow này

chứa dữ liệu cho DataSet Để điền đầy đủ một tập DataSet với dữ liệu ,bạn

phải sử dụng đối tượng tiếp hợp dữ liệu

Dưới đây là hình minh họa cách làm việc của bộ tiếp hợp dữ liệu với

những tập dữ liệu DataSet

Data Source

DataAdapter

DataTable

Fill

Update

Trang 26

Mỗi bộ tiếp hợp dữ liệu DataAdapter làm việc với một DataTable đơn trong tập dữ liệu DataSet Bạn gọi phương thức Fill của bộ tiếp hợp dữ liệu để điền đầy dữ liệu cho DataSet từ cơ sở dữ liệu Bạn gọi phương thức Update của bộ tiếp hợp dữ liệu để lưu lại những thay đổi tác động lên tập dữ liệu DataSet trở lại cơ sở dữ liệu

Bên trong, bộ tiếp hợp dữ liệu có bốn đối tượng lệnh dùng truy cập dữ liệu thay mặt DataSet Bộ tiếp hợp dữ liệu sử dụng những đối tượng lệnh này để trích rút dữ liệu từ cơ sở dữ liệu và để cập nhật cơ sở dữ liệu khi có bất kỳ những thay đổi tác động lên DataSet Nếu bộ tiếp hợp dữ liệu sử dụng nhà cung cấp dữ liệu SQL Server, những lệnh này sẽ là đối tượng SqlCommand Nếu bộ tiếp hợp dữ liệu sử dụng nhà cung cấp dữ liệu SQL Server, những lệnh này sẽ là đối tượng OleDbCommand

Sau đây là mô tả những đối tượng lệnh này

 SelectCommand

Chứa một phát biểu Sql Select dùng trích rút dữ liệu từ cơ sở dữ liệu và đưa vào tập dữ liệu DataSet

Trang 27

 Dễ dàng xây dựng một cơ sở dữ liệu quan hệ lớn ,mỗi cơ sở dữ liệu có thể chứa 2 tỷ quan hệ và mỗi quan hệ có thể chứa 1024 thuộc tính

 Giải quyết trình trạng tranh chấp giữa các user khi cùng truy xuất một

cơ sở dữ liệu tại cùng một thời điểm

 Bảo đảm các ràng buộc toàn vẹn trên cơ sở dữ liệu

 Bảo vệ an toàn cơ sở dữ liệu ( Quản lý nhiều mức độ truy cập vào cơ sở dữ liệu)

 Truy vấn dữ liệu nhanh

SERVERS

Trang 28

Là thành phần chứa các database và các công cụ quản trị đối với Server Mỗi tên Server sẽ tương ứng với một SQL Server mà nó đăng kí ,như vậy từ một máy ta có thể thực hiện công việc quản trị đối với nhiều SQL Server

Mỗi SQL Server có thể chứa nhiều database Một database bao gồm tập hợp các table và các đối tượng khác như : diagrams , views, stored procedure, trigger…

Có 3 loại tập tin được sử dụng để lưu trữ database :

 Mỗi database có một tập tin dữ liệu cơ sở dùng để chứa dữ liệu và các thông tin khởi động database

 Ngoài tập tin cơ sở , một databse còn có các tập tin phụ dùng để chứa tất cả dữ liệu liên quan nhưng không được đặt bên trong tập tin dữ liệu cơ sở Nếu tập tin dữ liệu cơ sở có thể lưu giữ tất cả dữ liệu trong database thì database không cần đến các tập tin dữ liệu phụ

 Một database có ít nhất một tập tin lưu vết chứa các thông tin giao dịch của database dùng để phục hồi dữ liệu Kích thước tối thiểu của tập tin lưu vết là 512KB

Một hệ phục vụ SQL Server có tối đa 32.767 database Mỗi database có kích thước tối thiểu 1MB

Để có thể tạo một database người dùng phải là thành viên của sysadmin và dbcreator

User tạo database cũng sẽ trở thành chủ sở hữu của database

Tạo mới DATABASE trong SQL SERVER

Để tạo mới một database ta lần lượt thực hiện các bước sau:

Bước 1: Từ cửa sổ SQL Server Enterprise Manager  chọn Sever  click phải chuột ngay đối tượng database  chọn New Database

Trang 29

Bước 2: Tại mục name gõ vào tên database mới Database cơ sở và tập tin lưu vết được tạo sẽ sử dụng tên database mới gõ vào gắn thêm phía sau chuỗi “_Data” đối với tập tin cơ sở và chuỗi “_Log” đối với tập tin lưu vết Ta

có thể nhập kích cỡ cơ sỡ dữ liệu tính theo megabyte trong hộp thoại Size,

cơ sỡ dữ liệu có thể chiếm toàn bộ thiết bị mà nó đang chứa,nhưng không thể lớn hơn ,ta cũng có thể điều chỉnh lại kích cỡ cơ sỡ dữ liệu

Bước 3: Để thay đổi giá trị mặc định cho tập tin cơ sở ,ngay tab General ,ta nhập giá trị vào các ô tương ứng Tương tự với tab Transaction log ta cũng có thể mặc định lại các giá trị mặc định cho tập tin lưu vết Bước 4: Click nú lệnh OK để việc tạo mới bảng

TABLES

Tạo bảng bằng Enterprise Manager

tạo được một database mới là Sach , mở cơ sỡ dữ liệu sách ra chọn Tables và click phải chuột  chọn New Table

Trang 30

Bước 2: Trên hộp thoại Choose Name , ví dụ tao table tên là NXB , gõ tên table mới ,sau đó nhấp váo nút OK để hoàn tất

trong table

Trong đó :

Trang 31

 Column Name : Tên của column

 Datatype : Kiểu dữ liệu cho column

 Length : Kích thước dữ liệu

 Precision :Là số thể hiện số ký số của column có kiểu dữ liệu dạng số

 Scale :là số thể hiện số ký số phần thập phân của column có kiểu dữ liệu là số thực

 Allow null: Xác nhận column có chấp nhận giá trị null

 Default value: Xác định giá trị mặc định

 Indentity : Check vào ô nếu muốn column là thuộc tính nhận dạng có tính duy nhất

 Indentity seed : Giá trị khởi đầu của column được xác định là indentity (giá trị mặc định là 1)

 Indentity Increment : Giá trị xác định bước tăng kế tiếp kể từ giá trị Indentity seed của column được xác định

Bước 4: Sau khi hoàn tất công việc thiết kế các trường trong table Ta chọn column dự định là khoá chính , click biểu tượng có hình chìa khoá Nếu có từ 2 column trở lên tham gia khoá chính ,nhấn Ctrl và click chuột lần lượt vào các column cần chọn tham gia khoá , sau đó click biểu tượng có hình chía khoá Chỉ những column nào không chấp nhận null mới có thể là thành viên của khoá chính

Trang 32

Bước 5 : Click nút lệnh Save để kết thúc việc tạo bảng

Câu truy vấn trong SQL QUERY ANALYZER :

SELECT list of expressions

FROM list of tables

[ WHERE row conditions ]

[GROUP BY list of columns

[HAVING group conditions] ]

[ORDER BY list of column];

PHẦN 5 : WINDOWS SERVICES

WINDOWS SERVICES là gì ?

Trong môi trường Windows ,có rất nhiều ứng dụng thực thi không cần bất kỳ một giao tiếp nào với người dùng ,hay yêu cầu người dùng đăng nhập vào ứng dụng đó,để thực thi các ứng dụng này.Ta có thể nhận thấy tất cả các ứng dụng đang thực thi trong dịch vu (Service)

Một dịch vụ (Service) là một chương trình ,mà chúng tự động thực hiện hay khơỉ động khi hệ điều hành được nạp lên và không giao tiếp với người dùng,chúng hoạt động liên tục 24/24 cho đến khi hệ điều hành có thể khởi động lại,cứ tiếp tục như vậy cho đến khi ta không muốn sử dụng chúng

Tạo Một Ứng dụng Windows Service

Sử dụng VS.Net ,ta dễ dàng tạo một ứng dụng Windows Services,bằng cách tạo một ứng dụng để cài đặt như một dịch vụ trong môi trường Windows

Trang 33

Khi xây dựng một ứng dụng Windows Service ,ta cần quan tâm đến các điều khiển trong khi dịch vụ này được khơỉ động và được dừng lại ,những lệnh nào gưỉ đến cho dịch vụ ,những hành động nào sẽ thực thi ,những lệnh nào sẽ nhận ,điều được khai báo trong những sự kiện của Service ,chẳng hạn như sự kiện OnStart hay OnStop

Khi thực hiện một đoạn mã trong sự kiện OnStart ,ta ra lệnh yêu cầu ứng dụng thực hiện các nhiệm vụ nào khi ứng dụng khơỉ tạo ,điều này giống như một chương trình chính trong điều khiển ứng dụng ,tuy nhiên ta cần có nhiều nhiệm vụ cần phải thực thi khi service được khơỉ tạo

Trong sự kiện OnStop,cũng tương tự như trường hợp OnStart.Khi người dùng ngừng Service ,ta có thể viết đoạn mã thực thi một số nhiệm void ,bên cạnh đó ta có thể gửi thông báo ra hệ thống

Ta cũng có thể chỉ ra rằng ,khi người dùng tạm dừng(Pause) hay dừng (Stop) một Service,ứng với quyền hạn tài khoản hay User nào đó,để tránh trường hợp một user khác có thể thực hiện quá trình dừng hay tạm dừng lại các services đang thực hiện ngoài thẫm quyền của User hiện hành

Để tạo một ứng dụng Service ,bằng cách :

-Khơỉ động Microsoft Visual Studio NET

-Chọn Create New Project ,chọn Visual C# Projects ,chọn Windows service ,như sau:

Trang 34

Tạo Một Ứng Dụng Windows Service

Với Project vừa tạo ,ta sẽ có một tập tin Service1.cs Kích hoạt trình soạn mã ta thấy rằng lớp Service1 này được tạo ra từ lớp ServiceBase ,sử dụng lớp này ta có thể định nghiã các nhiệm void trong các lệnh

Start,Stop,Pause,Continue ,cũng như khi hệ thống kết thúc.Lớp cơ bản này được gọi khi dịch vụ bắt đầu khởi động và kích hoạt đến sự kiện

OnStart,tương tự như vậy cho các sự kiện OnStop,OnPause,OnContinue bằng khai báo :

publicclass Service1 : System.ServiceProcess.ServiceBase

} Khi sử dụng OnContinue hay OnPause ,phải chắc chắn rằng thuộc tính ServiceBaseCanPauseAndContinue đang có giá trị là true

Cài Đặt Ứng Dụng Service :

Ứng dụng dịch vụ không thực thi từ Command Line hay IDE ,chúng phải được cài đặt trong môi trường windows mà chúng có thể kiễm soát Trước khi cài đặt dịch vụ ta cần phải cài đặt thuộc tính của dịch vụ, ta cần gán lớp Installer trong ứng dụng Windows Service ,lớp này rất cần thiết khi thi hành ứng dụng dịch vụ cuả ta.Để thêm đối tượng cài đặt vào trong ứng dụng,bằng cách nhắp phải trên

Servicé trong ứng dụng Trong ứng dụng WindowsService cuả ta chọn Add Installer

Trang 35

Một lớp gọi là ProjectInstaller sẽ tự động thêm vào trong ứng dụng ,hai thành phần của lớp này gồm ServiceProcessInstaller1 và ServiceInstaller1 như hình :

Tạo Installer

Gán thuộc tính Account cuả ServiceProcessInstaller1 với gía trị LocalSystem,kế tiếp thay đổi một số thuộc tính cuả ServiceInstaller1 ,với thuộc tính ServiceName là tên Service sẽ dược thực thi,và StartType được gán giá trị Manual.(hoặc Automatic)

Để cài đặt dịch vụ ta phải thực thi tập tin InstallUtil.exe bằng Visual Studio NET Command Prompt trong Microsoft Visual Studio NET :

InstallUtil Tên Service exe

Để thi hành Service ,ta khởi động Service bằng phát biểu sau :

Net Start Ten Service

Đối với Win2000 ,dùng ControlPanel | Administrative Tools | Services ta cũng khởi động được WindowsService

Trang 36

PHẦN 6 : WEBSERVICE

WebService là gì ?

Một dịch vụ Web [Web service] là một mẫu lôgic ứng dụng được phô diễn công khai và sẵn có đối với mọi hệ thống đa dạng qua việc dùng các chuẩn Internet chung,chẳng hạn như HTTP,XML,và SOAP.Về cơ bản ,dịch vụ Web là mã mà ta phô diễn trong một ứng dụng có thể được truy cập cục bộ ,qua một intranet ,hay qua internet.Ta có thể cho phép bất kỳ hệ khách nào truy cập dịch vụ Web của ta,hoặc hạn chế khả năng truy cập cho chỉ các hệ khách đã được thẫm định quyền

Trang 37

Trong những năm qua,các lập trình viên Microsoft Windows đã quen sữ dụng COM (Component Object Model) và vai trò của nó trong việc tạo những thành phần gắn kết tạo nên phần mềm.COM cho phép lập trình viên tạo những thành phần tự mô tả,độc lập ngôn ngữ và có thể kết hợp cùng nhau trong hệ thống lớn,và COM có thể sữ dụng để hình thành cơ sở sữ dụng mềm dẻo cho những ứng dụng phân tán

Những hệ thống dạng component khác cũng được sữ dụng rộng rãi như CORBA và RMI của Java

Mặc dù COM rất hữu ích nhưng nó có một vài khuyết điễm.Trước hết,việc viết những thành phần COM có thể khó,yêu cầu bạn phải có kiến thức sâu theo bí quyết riêng của từng nguời lập trình,tài liệu không rõ ràng.Thứ hai,COM sữ dụng giao thức nhi phân để giao tiếp giữa những thành phần đối tượng ở xa và khiến cho khó sữ dụng thành phần COM ở bất kỳ nơi đâu khác ngoài môi trường Microsoft Windows ra.Việc tích hợp một hệ thống COM với những thành phần sử dụng CORBA hoặc RMI không đơn giản chút nào

Dịch vụ Web giúp đở và giải quyết vấn đề theo hai cách

Trước hết,ta không cần nhiều kiến thức chuyên dụng để viết dịch vụ Web,và rất dễ để cung cấp một giao diện Dịch vụ Web đối với đoạn mã hiện đang tồn tại trước đây.Lợi thế thứ hai là các dịch vụ Web sữ dụng chuẩn dữ liệu và những giao thức internet phục vụ cho việc giao tiếp, vì vậy dễ dàng hơn nhiều khi xây dựng những hệ thống phân tán không đồng nhất

Một dịch vụ Web sẽ phô diễn một giao diện để triệu gọi một phương thức,hàm trên một hệ thống,từ một hệ thống khác.Để thực hiện lệnh gọi đến phương thức này,ta dùng một trong ba giao thức Internet :HTTP GET, HTTP POST ,hoặc SOAP.Sau khi triệu gọi phương thức của Web service,mọi dữ liệu cần được trả về đều được nối tiếp hoá dưới dạng XML trong thân của thông điệp SOAP.Mô hình trao đổi dữ liệu này cho phép mọi đối tượng có thể được nối tiếp hoá dưới dạng XML-các chuổi ,các số nguyên, các mảng, ADO.NET Datasets, hoặc thậm chí các đối tượng tùy biến- được trao đỗi giữa bên cung cấp và bên tiêu thụ

Toàn bộ khái niệm trên trông giống Mô hình như sau :

Ngày đăng: 25/12/2014, 19:34

HÌNH ẢNH LIÊN QUAN

Sơ đồ các thành phần chính của .NET - luận văn công nghệ thông tin tìm hiểu c# và viết chương trình ứng dụng với webservice
Sơ đồ c ác thành phần chính của .NET (Trang 4)
Bảng dưới đây liệt kê tất cả các toán tử hổ trợ bởi C# : - luận văn công nghệ thông tin tìm hiểu c# và viết chương trình ứng dụng với webservice
Bảng d ưới đây liệt kê tất cả các toán tử hổ trợ bởi C# : (Trang 15)
Bảng thuộc tính của WebService - luận văn công nghệ thông tin tìm hiểu c# và viết chương trình ứng dụng với webservice
Bảng thu ộc tính của WebService (Trang 41)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w