Các giải pháp lập trình CSharp- P24

Các giải pháp lập trình CSharp- P24

Lượt xem: 19,616Lượt tải: 10Số trang: 10

Mô tả tài liệu

Các giải pháp lập trình CSharp- P24: Các giải pháp lập trình C# khảo sát chiều rộng của thư viện lớp .NET Framework và cung cấp giải pháp cụ thể cho các vấn đề thường gặp. Mỗi giải pháp được trình bày theo dạng “vấn đề/giải pháp” một cách ngắn gọn và kèm theo là các ví dụ mẫu.

Tóm tắt nội dung

6: Windows Form Hình 6.14 Phong cách Windows XP và phong cách kinh điển  Nếu bạn áp dụng file manifest cho một ứng dụng đang chạy trên phiên bản Windows trước Windows XP, nó sẽ bị bỏ qua, và phong cách kinh điển sẽ được sử dụng. Vì lý do này, bạn nên thử nghiệm ứng dụng của bạn cả khi có và không có file Thay đ i đ đ c c a formổ ộ ụ ủThay đ i đ đ c c a formổ ộ ụ ủ  Bạn muốn thay đổi độ đục của form để nó trong suốt hơn khi xuất hiện  Thiết lập thuộc tính Opacity của form với một giá trị nằm giữa 0% và tính Opacity của một form kiểm soát mức độ đục hay trong của một cửa sổ. Ở mức 100%, form xuất hiện với trạng thái mặc định, nghĩa là không có các vùng trong suốt trên form. Ở mức 0%, form hoàn toàn trong suốt, cũng có nghĩa bạn không thể tương tác với form được nữa. Khi thay đổi độ đục của một form bằng mã lệnh, bạn phải sử dụng một số thực nằm giữa 0.0 và void sender, e) { = void sender, e) { = 6: Windows Form Nếu chỉ muốn trong suốt những vùng nào đó trên form, bạn hãy sử dụng thuộc tính Bạn định nghĩa thuộc tính này là một màu nào đó. Nếu bất kỳ phần nào của form trùng với màu đó, nó sẽ trở nên trong suốt. Hình 6.15 trình bày một form với độ đục 80%. Chúng ta đặt một điều kiểm Panel lên form và thiết lập màu nền của Panel là màu mà ta đã định nghĩa trong thuộc tính của form. Như thế, form sẽ trong suốt trên vùng thuộc 6.15 Một form với độ đục 80% và một Panel có màu nền giống với thuộc tính của form Bạn có thể bắt gặp một số ứng dụng dùng hình bitmap làm giao diện người dùng, nhất là các kiểu media player. Bạn có thể tạo kiểu giao diện thế này bằng cách tạo một hình bitmap với những vùng nào đó có màu là màu mà bạn muốn trong suốt. Kế tiếp, thiết lập thuộc tính của form là file bitmap mà bạn đã tạo. Cuối cùng, thiết lập thuộc tính của form là màu mà bạn muốn trong suốt trong hình Img = Màu tại được sử dụng làm màu trong = = 10); Bạn cũng có thể gỡ bỏ thanh tiêu đề của form bằng cách thiết lập là None (xem mục 6.14). Để form có thể di chuyển được trong trường hợp này, bạn hãy áp dụng mục 6: Windows Trên đây là một cách để tạo form có hình dáng bất thường, một cách khác sẽ được trình bày trong mục 7:ASP.NET VÀ WEB 7: ASP.NET và Web ASP.NET là một nền dùng để phát triển các ứng dụng Web, và nó là một phần của Microsoft .NET ASP.NET cho phép bạn viết dịch vụ Web XML (sẽ được thảo luận trong chương 12) và phát triển website (được thảo luận trong chương này). Các trang ASP.NET sử dụng mô hình điều kiểm khiến cho việc viết mã cho chúng cũng tương tự như viết mã cho các ứng dụng thông thường. Tuy nhiên, sự tương tự này có thể là giả tạo. Như hầu hết các nhà phát triển ASP.NET chứng thực, các ứng dụng Web có cách diễn đạt riêng của chúng. Ví dụ, bạn sẽ cần thực hiện thêm các bước để duy trì trạng thái, chuyển thông tin giữa các trang, thụ lý những sự kiện phía client, thực hiện xác thực, và bảo đảm hiệu năng tối ưu khi sử dụng cơ sở dữ liệu. Chương này sẽ xem xét tất cả các vấn đề Chương này sẽ không giới thiệu về ASP.NET. Thay vào đó, chương này sẽ giúp những nhà phát triển ASP.NET trung cấp giải quyết những vấn đề thường gặp. Để tìm hiểu căn bản về ASP.NET, hãy vào trang hoặc tham khảo ở các tài liệu khác chuyên về mục trong chương này trình bày các vấn đề sau đây:  Chuyển hướng các yêu cầu của người dùng (mục 7.1).  Duy trì trạng thái giữa các yêu cầu trang (mục 7.2 và 7.3).  Sử dụng để cải tiến giao diện với các tính năng phía client (mục 7.4, 7.5, và 7.6).  Cho phép người dùng upload file (mục 7.7).  Xác thực client theo hai cách: Xác thực tích hợp với Windows (mục 7.8) và xác thực (mục 7.9).  Xác nhận tính hợp lệ của đầu vào mà không sử dụng điều kiểm validator của ASP.NET (mục 7.10).  Tạo động điều kiểm web (mục 7.11), hình ảnh (mục 7.12), và điều kiểm người dùng (mục 7.13).  Cải thiện hiệu năng với (mục 7.14) và (mục 7.15).  Giải quyết thông báo lỗi “Unable to start debugging on the Web server” (mục 7.16).  Thay đổi ngữ cảnh tài khoản Windows mà một ứng dụng ASP.NET chạy trong đó (mục này sử dụng các lớp web cơ bản thuộc không gian tên và các lớp điều kiểm web thuộc không gian tên Khi sử dụng các lớp trong các không gian tên này, tên lớp đầy đủ sẽ không được chỉ Chuy n h ng ng i dùng sang trang khácể ướ ườChuy n h ng ng i dùng sang trang khácể ướ ườ  Bạn cần chuyển sự thực thi từ một trang ASP.NET sang một trang khác, hoặc bạn muốn chuyển người dùng đến một site hoàn toàn 7: ASP.NET và Web Form  Sử dụng phương thức để chuyển người dùng đến một URL mới, hoặc sử dụng phương thức (nhanh hơn) để chuyển người dùng đến một Web Form ASP.NET khác trên cùng dễ nhất để chuyển người dùng từ một trang này đến một trang khác là sử dụng phương thức và cấp một URL mới. Bạn có thể truy xuất đối tượng hiện tại thông qua đối tượng hoặc sử dụng thuộc tính Reponse của đối tượng Page hoặc Control. Phương thức thụ lý sự kiện dưới đây (đáp ứng cho một cú nhắp chuột vào Button) sẽ chuyển người dùng đến một trang ASP.NET void sender, e) { thức Redirect có thể làm việc với URL tương đối (chỉ đến những tài nguyên trong cùng thư mục ảo), và với URL đầy đủ. URL có thể chỉ đến trang ASP.NET khác, kiểu tài liệu khác (như trang HTML hoặc hình ảnh), và thức Redirect gửi chỉ thị chuyển hướng đến trình duyệt. Kế đó, trình duyệt sẽ yêu cầu trang mới. Kết quả là trình duyệt phải thực hiện hai chuyến đến và phải xử lý thêm một yêu cầu nữa. Một tùy chọn hiệu quả hơn là sử dụng phương thức phương thức này sẽ chuyển sự thực thi đến một trang ASP.NET khác trên cùng Ví void sender, e) { thức Transfer không cần thêm một chuyến đến client, nhưng nó sẽ không làm việc nếu bạn cần chuyển sự thực thi đến một server khác hoặc một kiểu tài nguyên khác với Web Form (bao gồm trang ASP cổ Duy trì tr ng thái gi a các yêu c u c a trangạ ữ ầ ủDuy trì tr ng thái gi a các yêu c u c a trangạ ữ ầ ủ  Bạn cần lưu trữ vài thông tin đặc thù của người dùng giữa các lần postback của Sử dụng view state (trạng thái nhìn), query string argument (đối số chuỗi truy vấn), session state (trạng thái phiên làm việc), hoặc cookie, tùy thuộc vào nhu cầu của là một mô hình lập trình phi trạng thái model). Mỗi khi một postback được phát sinh, mã sẽ nạp vào bộ nhớ, thực thi, và được giải phóng khỏi bộ nhớ. Nếu muốn giữ lại vết của thông tin sau khi mã đã hoàn tất việc xử lý, bạn phải sử dụng các kiểu quản lý trạng thái (state 7: ASP.NET và Web cung cấp nhiều cách để lưu trữ thông tin, hay trạng thái, giữa các yêu cầu Kiểu trạng thái mà bạn sử dụng cho biết: thông tin sẽ sống bao lâu, sẽ được lưu trữ ở đâu, và sẽ được bảo mật như thế nào. Bảng 7.1 liệt kê những tùy chọn trạng thái khác nhau được cấp bởi ASP.NET. Bảng này không chứa đối tượng Cache, đối tượng này cung cấp kho lưu trữ tạm thời và sẽ được mô tả trong mục 7.5. Cú pháp cho các phương pháp lưu trữ dữ liệu là như nhau. Dữ liệu được lưu trữ trong một đối tượng tập hợp và được đánh chỉ mục bằng một tên 7.1 Các kiểu quản lý trạng thái Dữ liệu được phép Vị trí lưu trữ Thời gian sống Bảo mật View cả các kiểu dữ liệu trường ẩn trong trang web hiện hành. Bị mất khi người dùng chuyển sang một trang định là không an toàn. Tuy nhiên, bạn có thể sử dụng các chỉ thị trang để thực hiện mật hóa và băm để ngăn dữ liệu bị liệu URL của trình mất khi người dùng nhập một URL mới hoặc đóng trình duyệt. Tuy nhiên, nó có thể được lưu trữ trong một dùng có thể nhìn thấy được và chỉnh sửa dễ cả các kiểu dữ liệu nhớ server (có thể được cấu hình cho một tiến trình hoặc cơ sở dữ liệu bên hiệu lực sau một khoảng thời gian được định nghĩa trước (thường là 20 phút, nhưng khoảng thời gian này có thể thay đổi toàn vì dữ liệu không bao giờ được chuyển cho Dữ liệu tính client (trong bộ nhớ hoặc một file text, tùy thuộc vào các thiết lập cho thời gian sống của thiết lập bởi lập trình viên. Có thể được sử dụng trong nhiều trang và có thể vẫn còn giữa các lần viếng an toàn, và có thể bị người dùng chỉnh 7: ASP.NET và Web cả các kiểu dữ liệu nhớ gian sống của ứng dụng (cho đến khi server được khởi động lại). Không giống với các phương pháp khác, dữ liệu ứng dụng là toàn cục đối với tất cả các người dùng. An toàn vì dữ liệu không bao giờ được chuyển cho 7.1 trình bày một trang web thử nghiệm các kiểu quản lý trạng thái khác nhau. Khi người dùng nhắp vào nút Store Data, một đối tượng sẽ được tạo ra và được lưu trữ trong view state, session state, và một cookie tùy biến. Khi người dùng nhắp vào nút Get Data, thông tin này sẽ được lấy ra và hiển thị. Cuối cùng, nút Clear Data sẽ xóa thông tin này trong tất cả các trạng 7.1 Thử nghiệm các kiểu quản lý trạng đây là phần mã cho class TestState : { protected protected 7: ASP.NET và Web Form protected protected // (Bỏ qua phần mã private void sender, e) { // Tạo đối tượng thử nghiệm. DateTime now = // Lưu trữ đối tượng trong view state. = now; // Lưu trữ đối tượng trong session state. = now; // Lưu trữ đối tượng trong một cookie tùy biến. // Kiểm tra xem cookie đã tồn tại hay chưa (có tên là 07-02). if == null) { // Tạo cookie. cookie = new // Cookie chỉ có thể lưu trữ dữ liệu chuỗi. // Nó có thể lưu trữ nhiều giá trị, // mỗi giá trị ứng với một khóa khác nhau. = // (Bạn có thể chỉnh sửa các thuộc tính // của cookie để thay đổi ngày hết hiệu lực.) // Gắn cookie vào đáp ứng. // Nó sẽ được cung cấp với tất cả các yêu cầu đến // site này cho đến khi hết hiệu lực. NÓI ĐẦU CẤU TRÚC CỦA SÁCH QUY ƯỚC YÊU CẦU VỀ HỆ SỬ DỤNG ĐĨA CD MỤC 1:PHÁT TRIỂN ỨNG ứng dụng ứng dụng và sử dụng và sử dụng thư xuất các đối số dòng biên dịch một khối mã vào file thực xuất một phần tử chương trình có tên trùng với một từ và quản lý cặp khóa tên tên mạnh cho minh một assembly tên mạnh không bị sửa việc ký assembly với chữ ký số và thiết lập tin tưởng một SPC thử lý Global Assembly người khác dịch ngược mã nguồn của 2:THAO TÁC DỮ tác chuỗi một cách hiệu hóa chuỗi bằng các kiểu mã hóa ký các kiểu giá trị cơ bản thành mảng kiểu hóa dữ liệu nhị phân thành văn dụng biểu thức chính quy để kiểm tra dữ liệu dụng biểu thức chính quy đã được biên ngày và giờ từ trừ, so sánh ngày xếp một mảng hoặc một một tập hợp vào một một tập hợp kiểu một đối tượng vào 3:MIỀN ỨNG DỤNG, CƠ CHẾ PHẢN CHIẾU, VÀ SIÊU DỮ miền ứng các đối tượng qua lại các miền ứng nạp các assembly không cần thiết vào miền ứng kiểu không thể vượt qua biên miền ứng assembly vào miền ứng dụng hiện thi assembly ở miền ứng dụng hiện hóa một kiểu trong miền ứng dụng dữ liệu giữa các miền ứng phóng assembly và miền ứng xuất thông tin tra kiểu của một đối một đối tượng bằng cơ chế phản một đặc tính tùy dụng cơ chế phản chiếu để kiểm tra các đặc tính của một phần tử chương 4:TIỂU TRÌNH, TIẾN TRÌNH, VÀ SỰ ĐỒNG thi phương thức với thi phương thức một cách bất đồng thi phương thức bằng thi phương thức bằng cách ra hiệu đối tượng thi phương thức bằng tiểu trình khiển quá trình thực thi của một tiểu biết khi nào một tiểu trình kết bộ hóa quá trình thực thi của nhiều tiểu một đối tượng tập hợp có tính chất chạy một tiến trình thúc một tiến đảm chỉ có thể chạy một thể hiện của ứng dụng tại một thời thị cấu trúc của một tài liệu XML trong thêm nút vào tài liệu thêm nút vào tài liệu XML một cách nhanh một nút khi biết tên của lấy các nút XML trong một không gian tên XML cụ các phần tử với biểu thức và ghi XML mà không phải nạp toàn bộ tài liệu vào bộ nhận tính hợp lệ của một tài liệu XML dựa trên một dụng XML với các đối tượng tùy XML Schema cho một lớp lớp từ một XML hiện phép biến đổi 6:WINDOWS điều kiểm vào form lúc thực kết dữ liệu vào điều lý tất cả các điều kiểm trên vết các form khả kiến trong một ứng tất cả các form trong ứng dụng trữ kích thước và vị trí của ListBox cuộn cho phép nhập số vào dụng ComboBox có tính năng xếp ListView theo cột bất kết menu ngữ cảnh vào điều dụng một phần menu chính cho menu ngữ form đa ngôn form không thể di chuyển cho form không đường viền có thể di chuyển một icon động trong khay hệ nhận tính hợp lệ của đầu vào cho một điều hiện thao tác dụng trợ giúp dụng phong cách Windows đổi độ đục của 7:ASP.NET VÀ WEB hướng người dùng sang trang trì trạng thái giữa các yêu cầu của các biến thành viên có trạng thái cho ứng các sự kiện phía client với thị cửa sổ pop-up với lập focus cho điều phép người dùng upload dụng IIS dụng Forms hiện xác nhận tính hợp lệ động điều kiểm vào Web về động một bức điều kiểm người dùng bằng mã dụng và lại dữ liệu với ASP.NET hoạt việc gỡ rối ứng dụng đổi quyền đã cấp cho mã 8:ĐỒ HỌA, ĐA PHƯƠNG TIỆN, VÀ IN tất cả các font đã được cài hiện “hit testing” với form có hình dạng tùy điều kiểm có hình dạng tùy tính năng cuộn cho một bức hiện chụp màn hình dụng “double để tăng tốc độ vẽ thị hình ở dạng tiếng “beep” của hệ file file thông tin về các máy in đã được cài văn bản đơn văn bản có nhiều text dạng thị lý tác vụ dụng Microsoft 9:FILE, THƯ MỤC, VÀ xuất các thông tin về file hay thư lập các thuộc tính của file và thư chuyển, xóa file hay thư kích thước của thư xuất thông tin phiên bản của dụng TreeView để hiển thị cây thư mục 7. Đọc và ghi file văn và ghi file nhị file một cách bất đồng file phù hợp một biểu thức tra hai file có trùng nhau hay tác trên đường dẫn định đường dẫn tương ứng với một file hay thư việc với đường dẫn tương file dung lượng đĩa còn thị các hộp thoại dụng không gian lưu trữ dõi hệ thống file để phát hiện thay xuất cổng 10:CƠ SỞ DỮ nối cơ sở dữ dụng thi câu lệnh SQL hoặc thủ tục tồn dụng thông số trong câu lệnh SQL hoặc thủ tục tồn lý kết quả của truy vấn SQL bằng lấy tài liệu XML từ truy vấn SQL biết tất cả các thể hiện SQL Server 2000 trên file Excel với dụng Data Form dụng Crystal Report 11:LẬP TRÌNH file thông qua và xử lý file bằng trang HTML từ một website có yêu cầu xác thị trang web trong ứng dụng địa chỉ IP của máy tính hiện giải tên miền thành địa chỉ một địa chỉ tiếp bằng địa chỉ IP của client từ kết nối lập các tùy chọn một dụng TCP một cách bất đồng tiếp bằng e-mail thông qua và nhận e-mail với MAPI Chương 12:DỊCH VỤ WEB XML VÀ viết mã cứng cho địa chỉ URL của dịch vụ Web dụng kỹ thuật trong dịch vụ Web dụng kỹ thuật trong dịch vụ Web phương thức web hỗ trợ giao dịch lập thông tin xác thực cho dịch vụ Web bất đồng bộ một phương thức lớp ký tất cả các lớp trong một lý các đối tượng ở xa trong sinh sự kiện trên kênh truy xuất từ xa soát thời gian sống của một đối tượng ở xa soát phiên bản của các đối tượng ở phương thức một chiều với dịch vụ Web XML hay 13:BẢO phép mã lệnh dụng assembly tên mạnh của hiệu bảo mật truy xuất mã hiệu việc kiểm tra quyền thực đảm bộ thực thi cấp cho assembly một số quyền nào hạn các quyền được cấp cho các yêu cầu quyền được tạo bởi một định mã lệnh có quyền nào đó lúc thực thi hay chế ai đó thừa kế các lớp của bạn và chép đè các thành viên tra chứng cứ của một lý chứng cứ khi nạp một assembly 11. Xử lý bảo mật bộ thực thi bằng chứng cứ của miền ứng dụng 12. Xử lý bảo mật bộ thực thi bằng chính sách bảo mật của miền ứng định người dùng hiện hành có là thành viên của một nhóm Windows nào đó hay chế những người dùng nào đó thực thi mã lệnh của nhận người dùng 14:MẬT số ngẫu mã băm của mã băm của tra mã đảm tính toàn vẹn dữ liệu bằng mã băm có vệ file bằng phép mật hóa đối lại khóa đối xứng từ password 8. Gửi một bí mật bằng phép mật hóa bất đối trữ khóa bất đối xứng một cách an toàn đổi khóa phiên đối xứng một cách an 15:KHẢ NĂNG LIÊN TÁC MÃ LỆNH một hàm trong một DLL handle của một điều kiểm, cửa sổ, hoặc một hàm có sử dụng cấu một hàm có sử dụng thông tin lỗi dụng thành phần COM trong phóng nhanh thành phần dụng thông số tùy dụng điều kiểm ActiveX trong thành phần .NET dùng cho 16:CÁC GIAO DIỆN VÀ MẪU THÔNG thực kiểu thực kiểu thực kiểu thực kiểu thực lớp khả-hủy thực kiểu thực lớp ngoại lệ tùy thực đối số sự kiện tùy thực mẫu thực mẫu 17:SỰ HÒA HỢP VỚI MÔI TRƯỜNG xuất thông tin môi giá trị của một biến môi một sự kiện vào nhật ký sự kiện xuất Windows một dịch vụ một bộ cài đặt dịch vụ shortcut trên Desktop hay trong Start menu PHỤ LỤC A: GIỚI THIỆU MỘT SỐ CÔNG CỤ .NET A.1 Biên dịch các đoạn mã ngắn với Snippet Compiler A.2 Xây dựng biểu thức chính quy với Regulator A.3 Sinh mã với Viết kiểm thử đơn vị với NUnit A.5 Kiểm soát mã lệnh với FxCop A.6 Khảo sát assembly với .NET Reflector A.7 Lập tài liệu mã lệnh với NDoc A.8 Tạo dựng giải pháp với NAnt A.9 Chuyển đổi phiên bản ASP.NET với ASP.NET Version Chuyển đổi phiên bản dự án với Visual Studio .NET Project Chuyển mã nguồn VB.NET sang C# với VB.NET to C# Chuyển mã nguồn C# sang VB.NET với Convert C# to Xây dựng website quản trị cơ sở dữ liệu với ASP.NET Maker 1.1 PHỤ LỤC B: THUẬT NGỮ ANH - VIỆT TÀI LIỆU THAM KHẢO