Tìm hiểu công nghệ ASP NET MVC

122 2 0
Tìm hiểu công nghệ ASP NET MVC

Đ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

Tìm hiểu cơng nghệ ASP.NET MVC Mục lục Phần I Lịch sử phát triển Web Lý đời ASP.NET MVC 2.1 Giới thiệu ASP.NET truyền thống 2.2 Nhược điểm ASP.NET truyền thống 2.3 Giới thiệu ASP.NET MVC (model-view-controller) 2.3.1 Nguồn gốc ASP.NET MVC 2.3.2 Các thành phần cấu thành ASP.NET MVC 2.3.3 Cấu trúc mặc định dự án ASP.NET MVC 2.4 So sánh ASP.NET ASP.NET MVC 2.5 MVC2 Tìm hiểu thành phần bên ASP.NET MVC 3.1 Controllers Actions 3.1.1 Controllers ? 3.1.2 Controller Actions ? 3.2 Views 3.2.1 Views ? 3.2.2 Tạo Views ? 3.2.2 Sử dụng Views ? 3.3 Models 3.3.1 Models ? 3.3.2 Tạo Database Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 3.3.3 Tạo Data Model với Microsoft Entity Framework 3.3.4 Sử dụng Linq to Sql ASP.NET MVC 1.5 URLs Routing 1.6 View Master Page User Control Page 1.a.1 View Master Page 1.a.2 User Control Page 3.7 HTML Helpers 1.a.1 HTML Helpers ? 1.a.2 Các phương thức có sẵn HTML Helpers 1.a.3 Bổ sung phương thức động HTML Helpers 3.8 Validation Form Data 1.a.1 Model State ? 1.a.2 Validation Helpers 1.a.3 Validating with the IDataErrorInfo Interface 1.a.4 Style Validation Message 3.9 Model Binders Action Filters 1.a.1 Model Binders 1.a.2 Action Filters 1.10 Chứng thực Users 1.11 Sử dụng Unit Test ASP.NET MVC Triển khai ứng dụng ASP.NET MVC Tích hợp Ajax vào ASP.NET MVC Sử dụng jQuery ASP.NET MVC Kết hợp MVC WebForms Phần II: Xây dựng module website thực nghiệm: NHANLUCQUOCTE.EDU.VN Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Con đường phát triển Web Thời gian Công nghệ Sức mạnh Yếu điểm Jurassis CGI Đơn giản (lựa chọn vào thời điểm này) Chạy bên web server Bronze age IDC (Microsoft Internet database connector) Chạy bên server Chì đóng gói câu truy vấn SQL template cho kết có định dạng 1996 ASP (Active Server Page) Mục đích chung Thông dịch thời gian thực 2002/ 2003 ASP.NET 1.0/1.1 - - 2005 ASP.NET 2.0 Giao diện có trạng thái 2007 ASP.NET Ajax Đã biên - 2008 ASP.NET 3.5 dịch Chiếm nhiều bandwidth HTML khó nhìn Khơng khả test khuyến khích lập trình hướng đối tượng - Cấu trúc file lớn * CGI chuẩn có ý nghĩa kết nối web server với chương trình có khả thực thi độc lập, trả kết động Lý đời ASP.NET MVC 2.1 Giới thiệu ASP.NET truyền thống: - Dựa NET hỗ trợ đa ngôn ngữ C#, VB.NET,… - Microsoft hướng đến việc giấu giao thức HTTP (ẩn chất bên trong) code HTML việc đưa mơ hình UI (user interface) đối tượng control phía server (mỗi control có trạng thái riêng mình, tự động sinh mã HTML cần, tự động kết nối với kiện phía client) - Các nhà phát triển Web khơng phải làm việc với request response HTTP độc lập Thay thuật ngữ StateFull UI (tạm dịch trạng thái giao diện người dùng) Các nhà phát triển Web cần kéo-thả, tưởng tượng điều xảy server thiết kế giao diện Web Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 2.2 Nhược điểm ASP.NET truyền thống: ứng dụng Webforms (dùng công nghệ ASP.NET) sử dụng thực tế sinh nhược điểm sau: -ViewState: chế để trì trạng thái qua lần request, điều dẫn đến khối lượng liệu lớn truyền client-server - Chu kì sống trang web: chế kết nối trình điều khiển kiện client server, điều trở nên phức tạp, dễ phá vỡ - Các control bị giới hạn mã HTML: vài control server sinh mã HTML, khơng phải mã HTML mà ta mong muốn Ví dụ vài control servers sinh giá trị ID phức tạp, khó truy xuất JavaScript - Cảm nhận sai việc phân tách code khỏi mã HTML cách tạo codebehind bên trang: Trong thực tế nhà phát triển Web khuyến khích nên trộn việc trình bày code (ví dụ: việc quản lý control phía server) với tính logic ứng dụng họ (ví dụ: thao tác sở liệu) với Tốt hết không nên tách riêng chúng kết thường khó hiểu dễ vỡ - Khơng thể kiểm thử: Khi lần nhà thiết kế ASP.NET đưa thiết kế họ, họ lường trước việc kiểm thử trở thành xu hướng phát triển phần mềm Và kiến trúc họ xây dựng hồn tồn khơng phù hợp cho việc kiểm thử tự động * Và phiên ASP.NET 2.0 thêm vào số components chuẩn nhằm giảm sinh số lượng code bạn không mong muốn (bạn cần viết chúng) Và năm 2007, Microsoft cho đời Web 2.0/Ajax, hỗ trợ nhiều việc tương tác với client Và phiên cùa ASP.NET phiên 3.5 với số tính thêm vào tích hợp số controls mới, ASP.NET dynamic data giúp việc tạo database tự động đơn giản (liệt kê, sửa, … mẫu tin database) Xa Visual Studio 2010 ASP.NET 4.0 cho nhà phát triển web tùy chọn thành phần ID HTML, nhằm giảm rắc rối giá trị ID phức tạp khó dự đốn trước 2.3 Giới thiệu ASP.NET MVC : ASP.NET MVC tảng công nghệ Microsoft ASP.NET MVC, thiết kế từ suy nghĩ làm để xây dựng phần mềm tốt (phần mềm tốt phần mềm bạn muốn tạo dễ dàng thay đổi - Stephen Walther) ASP.NET MVC thiết kế để bổ sung nguyên lý patterns phát triển phần mềm xây dựng ứng dụng web Bên cạnh đó, thiết kế để hổ trợ việc kiểm thử 2.3.1 Nguồn gốc ASP.NET MVC: * ASP.NET MVC 1.0 Công nghệ ASP.NET MVC mới, nhiên có lịch sử lâu đời Nền tảng MVC phát minh Trygve Renskaug, ông viết trang giấy nói MVC vào năm 1978 Ban đầu gọi Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Thing Model View Editor pattern, sau đặt tên lại Model View Controller pattern ASP.NET MVC lần xuất dự án mã nguồn mở MonoRail Và nguồn gốc thật đời công nghệ Microsoft ASP.NET MVC Scott Guthrie (một nhà sáng tạo ASP.NET) chuyến bay đến Austin, Texas để nói hội thảo Alt.NET vào tháng 10-2007 Cuối đầu năm 2009 phiên ASP.NET MVC 1.0 (released) đời - Điều kiện cần để xây dựng ứng dụng ASP.NET MVC: + Microsoft.Net Framework 3.5 SP + Microsoft ASP.NET MVC + Visual Studio 2008 SP 2.3.2 Các thành phần cấu thành ASP.NET MVC: ứng dụng MVC (là từ viết tắt Model – View – Controler) chia làm phần: - Model: Model MVC chứa tất logic ứng dụng (ví dụ: xử lý sở liệu,…), không chứa view hay controller Model chứa gồm logic ứng dụng, logic nghiệp vụ, logic truy xuất sở liệu Model MVC chứa mô hình lớp ( mơ hình đối tượng miền ứng dụng ) - View: View MVC chứa thẻ HTML view logic - Controller: Controller MVC chứa tính logic lưu đồ điều khiển (control-flow) Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 2.1: Mơ hình MVC (kí hiệu: tương tác với) * Lợi ích ứng dụng web dựa mơ hình MVC: - Có tính mở rộng thay thành phần cách dễ dàng - Không sử dụng viewstate, điều làm nhà phát triển dễ dàng điều khiển ứng dụng - Hệ thống định tuyến mạnh mẽ - Hỗ trợ tốt cho test-driven development (TDD) cài đặt unit tests tự động, xác định kiểm tra lại yêu cầu trước bắt tay vào viết code - Hỗ trợ kết hợp tốt người lập trình người thiết kế giao diện - Sử dụng tính tốt có ASP.NET * Nhược điểm ASP.NET MVC Không hướng đến kiện làm cho nhà phát triển ASP.NET webform khó khăn - Yêu cầu hiểu biết HTTP, HTML, CSS JavaScript - Thư viện nhà phân phối thứ ba không mạnh 2.3.3 Cấu trúc mặc định dự án ASP.NET MVC: bước tạo project mặc định ASP.NET MVC sau: Khởi động visual studio 2008, chọn File -> New -> Project -> ASP.NET MVC Web Application LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Trang Hình 2.2: Tạo dự án ASP.NET MVC Hình 2.3: Tạo test dự án Sau dự án khởi tạo xong, ta có cấu trúc mặc định tạo sẵn trình Visual sau: Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Hình 2.4: Cấu trúc mặc định project ASP.NET MVC * Ý nghĩa thư mục ứng dụng ASP.NET MVC App_Data: chứa file liệu, thư mục App_Data chứa sở liệu cục - Content: chứa nội dung tĩnh hình ảnh file css - Controllers: chứa lớp controller ASP.NET MVC - Models: chứa lớp model ASP.NET MVC Scripts: chứa file javascript bao gồm thư viện ASP.NET Ajax jQuery - Views: chứa views ASP.NET MVC - Sau chạy thử chương trình (ctrl+F5) cho kết sau : LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Trang Hình 2.5: Ứng dụng mặc định visual tạo 2.4 So sánh ASP.NET webform ASP.NET MVC Hình 2.5: Khung ASP.NET Net Framework: hỗ trợ loại ứng dụng desktop, web ứng dụng console ASP.NET framework phần NET framework, xây dựng nhằm hỗ trợ ứng dụng Web (caching, authentication authorization) Trong đó, Microsoft có hướng phát triển web ASP.NET ASP.NET Webforms ASP.NET MVC Và ASP.NET MVC thay đổi mặt tư duy, khơng hồn tồn thay cho có ứng dụng ASP.NET Web Forms, việc chọn hướng để xây dựng website tùy thuộc vào nhà phát triển Trang LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com * Sự khác biệt ASP.NET MVC với ASP.NET 2.0 Tính ASP.NET 2.0 ASP.NET MVC Kiến trúc chương trình Kiến trúc mơ hình WebForm è Business è Database Kiến trúc sử dụng việc phân chia chương trình thành Controllers, Models, Views Cú pháp chương trình Sử dụng cú pháp webform, tất kiện controls server quản lý Các kiện điều khiển controllers, controls không server quản lý Truy cập liệu Sử dụng hầu hết công nghệ truy cập liệu ứng dụng Phần lớn dùng LINQ to SQL class để tạo mơ hình truy cập đối tượng Debug Debug chương trình phải thực tất bao gồm lớp truy cập liệu, hiển thị, điều khiển controls/ Debug sử dụng unit test kiểm tra phương thức controller Tốc độ phân tải Tốc độ phân tải chậm trang có nhiều controls ViewState lớn Phân tải nhanh quản lý ViewState để quản lý control trang Tương tác với javascript Khó khăn Dễ dàng URL Address Cấu trúc địa URL có dạng Cấu trúc địa rành mạch theo dạng Controllers/Action/Id .aspx?& 2.5 ASP.NET MVC Trang 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com $(“.SuperBig”).removeClass(“SuperBig”) removes class css có tên SuperBig từ tag có class css SuperBig $(#options”).toggle() Bật tắt hiển thị phần tử với id tag option Nếu tag hiển thị se ẩn tag ngược lại se hiên tag lên $(“DIV:has(INPUT[type=’checkbox’]:disabled)”).prepend(“Hey!”) chèn tag < i>Hey! vào đau tat the div chứa checkbox disable $(“#options A”).css(“color”,”red”).fadeOut() tìm tất thẻ liên kêt có id option, thay color text thành mầu đò thay đỏi opactiy Như bạn thấy thật ngắn gọn Nếu không sử dụng jQuery thi bạn phải viết nhiều code javascript jQuery hỗ trợ css cho selector bất chấp trình duyệt có hỗ trợ hay khơng 7.3 Waiting for the DOM -Hầu hết trình duyệt run code javascript hay phân tích cú pháp trang, trước load trang hoàn thành Nó có khó khắn, bạn đặt code javascript vào đầu trang bên tag , code bạn ko thao tác đến tác html cuối trang, vi khơng ý muốn bạn -Truyền thống, nhà phát triển giải vấn đề nầy cách khởi tạo code bạn dựa vào kiện onload tag Như code ban run trang load hoàn toàn Nhưng có hạn chế – – Thẻ có mơt thuộc tính onload, bạn kết hợp nhiều code độc lập với Onload handler phải chờ cho tất DOM load, gồm có media(image) Như làm cho chậm trang bạn -Giải vấn đề nầy tốt nói cho trình duyệt biết run code bạn sớm mà DOM sẵng sàng khơng có chơ cho media Để làm điều bạn làm sâu < script > $(function() { // Insert your initialization code here }) ; < /script > Trang 108 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Bạn truyền hàm javasript cho hàm $() Bạn đăng kí để thực sớm mà DOM sẵng sàng Bàn đăng kí nhiều hàm bạn thích, nhiên thường có hàm $(function(){….}); nầy vị trí top view hoac control template, bạn đặt tất tác động jQuery bạn vào 7.4 Event Handling Jquery giải vấn đề api khac nhâu trình duyệt Jquery cung cấp một lớp trười tượng hàm javascript API làm việc nhâu trình duyệt Vd: $("img").click(function() { $(this).fadeOut() }) Khi bạn click vào image thi hàm fadeOut() se gọi 7.5 Global Helpers jQuery cung cấp vài thuộc tính hàm tồn cục để đơn giản hóa Ajax làm việc với nhiều trình duyệt mode khac - Vd: vài helpers khác method Description $.browser Cho bạn biết trình duyệt gi sử dụng Bạn tìm thấy sau nhận kết true: $.browser.msie, $.browser.mozilla, $.browser.safari, $.browser.opera $.browser.version Cho bạn biết version trình duyệt dang sử dụng $.support Xác định liệu trình duyệt có hổ trợ vài thuộc tính khác hay khơng $.strim(str) Trả lại chuổi str với xóa khoản trắng ỏ đau cuối $inArray(val,arr) Trả lại vị trí val mang arr jQuery cung cấp hàm nầy internet Explorer version khơng cung cấp hàm array.indexOf() Trang 109 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Đây tập hợp đầy hàm thuộc tính helper mà jQuery cung cấp, tập hợp đầy đủ thật nhỏ 7.5 Adding Client-Side Interactivity to an MVC View - Giả sử bạn có class MountainInfo định nghĩa sau public class MountainInfo { public string Name { get; set; } public int HeightInMeters { get; set; } } - Bạn tạo môt tập hợp đối tượng Mountaininfo sau < h2>The Seven Summits < div id="summits" > < table > < thead> < td>Item Height (m) Actions < /tr> < % foreach(var mountain in Model) { % > < tr > < td> < td> < td > < % using(Html.BeginForm("DeleteItem", "Home")) { % > < %= Html.Hidden("item", mountain.Name) % > < input type="submit" value="Delete" / > < % } % > < /td > < /tr > Trang 110 110 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com < % } % > < /table > < /div > -Nó khơng tuyệt vời thực thi tốt, khơng có javascript gọi - DeleteItem() action method se hiển thị thưc thi sau: -Để thực nút Delete thường sử dụng” nhiều forms” với nut Delete kết hợp với , tạo HTTP POST với khơng có javascript cho URL với item delete Trang 111 111 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Bầy chứng ta nâng cấp cách 7.6 Improvement 1: Zebra-Striping -Đây quy ước phổ biến thiết kế web, hàng luân phiên nhâu thi có mâu khác -Đê làm điều bạn đinh nghĩa class css sâu bạn lụa chọn để bổ sung class vào nhu sau < % int i = 0; % > < % foreach(var mountain in Model) { % > < tr > - Và bạn chèn đoạn code vào cua trang < script type="text/javascript" > $(function() { $("#summits tr:nth-child(even)").css("background-color", "silver"); }); < /script > 7.7 Improvement 2: Confirm Before Deletion -Trước bạn thực hành động mà khơng thể phuc hồi lại tốt bạn nên cung cấp cho người dùng cảnh báo trước bạn thực hành động Như bạn cần cảnh báo trước thươc xóa item Bạn không cần phải add kiện Onclient() or Onsubmit vào thẻ hmt mà bạn sử dung jquery nhu sau Trang 112 112 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com - Bạn add khối code vào tag trang $("#summits form[action$='/DeleteItem']").submit(function() { var itemText = $("input[name='item']", this).val(); return confirm("Are you sure you want to delete '" + itemText + "'?"); }); Improvement 3: Hiding and Showing Sections of the Page -Một bí phổ biến khác ẩn đoạn định trang bạn biết chắt chắn có liên quan tới người sử dụng -Vd: bạn muốn cột certain grid thi ẩn tương ứng cho check box Nó vất vả cho kiến trúc bình thường bạn làm điều server( asp.net Webform), bạn làm điều client bạn phải ý đến trình duyệt chạy -Nhưng bạn bỏ qua vấn đề jQuery tạo đơn giản bạn bổ sung code vao phần trang $("Show heights") insertBefore("#summits") children("input").click(function() { $("#summits td:nth-child(2)").toggle(); }) click(); Trang 113 113 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com 7.9 Client/Server Data Transfer with JSON -Thông thường bạn không cần truyền liệu đơn cho client Bạn có co truyền đối tượng, mạng đối tượng, đối tượng graph JSON định dạng phù hợp cho viêc -ASP.NET MVC có hổ trợ cho viêc truyền liệu JSON jQuery có hổ trợ cho việc nhận JSON - Action method trả lại JSON public class StockData { public decimal OpeningPrice { get; set; } public decimal ClosingPrice { get; set; } public string Rating { get; set; } } public class StocksController : Controller { public JsonResult GetQuote(string symbol) { // You could fetch some real data here if(symbol == "GOOG") return new JsonResult { Data = new StockData { Trang 114 114 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com = OpeningPrice = 556.94M, ClosingPrice = 558.20M, Rating "A+" }} ; else return null; } } -Ở client bạn lấy chuổi JSON sử dụng $.get() or $.post, sau phân tích thành đối tượng javascript gọi hàm eval() Tuy nhiên có cách dễ dàng jQuery có hổ trợ cho viêc lấy phân tich JSON với hàm $getJSON() < h2>Stocks < % using(Html.BeginForm("GetQuote", "Stocks")) { %> Symbol : < %= Html.TextBox("symbol") % > < input type="submit" / > < % } % > < table > < tr>Opening price: < tr>Closing price: < tr>Rating: < /table >

This page generated at

- Sau bạn hijaxing code để hiển thị thc tính StockDate vào table $("form[action$='GetQuote']").submit(function() { Trang 115 115 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com $.getJSON($(this).attr("action"), $(this).serialize(), function(stockData) { $("#openingPrice").html(stockData.OpeningPrice); $("#closingPrice").html(stockData.ClosingPrice) ; $("#stockRating").html(stockData.Rating); }) ; return false; }); 7.10 Fetching XML Data Using jQuery -Nếu thích bạn có thẻ sử dụng định dạng xml thay cho định dạng JSON cho ví dụ Khi mà bạn nhận liệu xml, dẽ cho viêc dung jQuery $.ajax() thay cho $.get() Bở $.ajax() cho phép bạn sử dung datatype:”xml” lụa chon nầy nói cho biết phan tính cấu trúc xml - Đầu tiên bạn cần trả lại XML từ action method - Vd: bạn thay đổi action method cho cho vd trươc sau public ContentResult GetQuote(string symbol) { // Return some XML data as a string Trang 116 116 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com if (symbol == "GOOG") { return Content( new XDocument(new XElement("Quote", new XElement("OpeningPrice", 556.94M), new XElement("ClosingPrice", 558.20M), new XElement("Rating", "A+") )).ToString(), System.Net.Mime.MediaTypeNames.Text.Xml); } else return null; } -Action method trả lại XML sau < Quote > < OpeningPrice>556.94 < ClosingPrice>558.20 < Rating>A+ < /Quote > - Tiếp theo bạn nói cho jQuery thơng dịch XML thay vi cho JSON $("form[action$='GetQuote']").submit(function() { $.ajax({ url: $(this).attr("action"), type: "GET", data: $(this).serialize(), dataType: "xml", // Instruction to parse response as XMLDocument success: function(resultXml) { // Extract data from XMLDocument using jQuery selectors var opening = $("OpeningPrice", resultXml).text(); var closing = Trang 117 117 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com $("ClosingPrice", resultXml).text(); var rating = $("Rating", resultXml).text(); // Use that data to update DOM $("#openingPrice").html(opening); $("#closingPrice").html(closing); $("#stockRating").html(rating); } }) ; return false; }) ; Kết hợp MVC WebForms (sử dụng kỹ thuật webform vào ứng dụng MVC việc sử dụng control phù hợp với webform,…): Để phát triển webform lên mơ hình MVC, cần thực bước sau: ✔ Ánh xạ đến thư viện chuẩn mơ hình MVC gồm: System.Web.Mvc, System.Web.Routing, System.Web.Abstraction vào thư mục \bin Trong đó, System.Web.Mvc nằm thư mục C:\Program Files\Microsoft ASP.NET\ASP.NET MVC 2\Assemblies, files lại nằm thư mục C:\Program Files\Reference Assemblies\Microsoft\Framework\v3 Sau đó, ta cần ánh xạ đến cách: ✔ Bổ sung thêm hai thư mục Controllers Views Trang 118 118 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Để cập nhật từ webform lên mơ hình MVC bổ sung thêm số file(s) cần thiết sau: ✔ Cập nhật file Web.config để nạp thư viện động thời điểm chạy việc đăng kí UrlRoutingModule Bước 1: Thay đổi nội dung thẻ Compilation hình bên dưới, bước đảm bảo assembly yêu cầu tham chiếu đến trình biên dịch (make sure that each required assembly is referenced for compiltion) Bước 2: Thêm tham chiếu namespace đến section system.web/pages, điều cho phép truy xuất đến System.Web.Mvc helpers, System.Linq, System.Collections.Generic Trang 119 119 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com từ ViewPage Cuối cùng, cần đăng kí UrlRoutingModule HttpModule Module có tác dụng so khớp URL từ request đến Route thích hợp chẳng hạn Controller/Action Sau thiết lập xong thuộc tính, chạy thử ứng dụng web, ta thu kết sau: Trang 120 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com * Kết hợp Webform MVC Bước 1: tạo trang aspx có nội dung bên Bước 2: Viết kiện code behind cho trang aspx Trong Controller Home ta khai báo sử dụng sau: Trang 121 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Trang 122 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... lại, ASP. NET MVC bổ sung nhiều đặc tính mới, có nhu cầu tìm hiểu thêm, tham khảo website: http://www .asp. net/ learn/whitepapers/what-is-new-in-aspnet -mvc 2.6 ASP. NET MVC - ASP. Net MVC chạy asp. net. .. .aspx?& 2.5 ASP. NET MVC Trang 10 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ASP. NET MVC chạy asp. net 3.5 sp1 asp. net Chúng ta triển khai asp. net mvc visual... 1.10 Chứng thực Users 1.11 Sử dụng Unit Test ASP. NET MVC Triển khai ứng dụng ASP. NET MVC Tích hợp Ajax vào ASP. NET MVC Sử dụng jQuery ASP. NET MVC Kết hợp MVC WebForms Phần II: Xây dựng module website

Ngày đăng: 01/11/2022, 20:11

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan