Dotnet core là gì

 8/28/2019 |  Admin   7717 lượt xem

ASP.NET Core là một framework mới của Microsoft. Nó được thiết kế lại từ đầu để trở nên nhanh chóng, linh hoạt và chạy trên được nhiều nền tảng khác nhau. Trong bài viết này, ASP.NET Core là một framework có thể được sử dụng để phát triển web với .NET. Nếu bạn có kinh nghiệm làm việc với MVC hoặc Web API trong một vài năm thì bạn sẽ nhận thấy những tính năng quen thuộc. Kết thúc khóa học ASP.NET Core của NET CORE VN. Bạn sẽ có những thứ cần thiết để bắt đầu làm việc được với ASP.NET Core và viết 1 ứng dụng có thể thêm, sửa hay xem dữ liệu từ database như các môn lập trình khác bạn đã từng học.

Sơ lượt về lịch sử của ASP.NET Core

ASP.NET đã được sử dụng từ nhiều năm để phát triển các ứng dụng web. Kể từ đó, framework này đã trải qua một sự thay đổi tiến hóa đều đặn và cuối cùng đã đưa chúng ta đến với ASP.NET Core 1.0 hậu duệ mới gần đây nhất của nó.

  • ASP.NET Core không phải là phiên bản tiếp theo của ASP.NET 4.6
  • Đó là một framework hoàn toàn mới, may mắn rằng nó một dự án side-by-side tương tự với mọi thứ mà chúng ta biết.
  • Nó thực ra được viết lại trên framework ASP.NET 4.6 hiện tại những kích thước nhỏ hơn và nhiều modular hơn.

ASP.NET Core là gì?

ASP.NET Core là một web framework mã nguồn và được tối ưu hóa cho cloud để phát triển các ứng dụng web chạy trên nhiều nền tảng như Windows, Linux và Mac. Hiện tại, nó bao gồm MVC framework được kết hợp các tính năng của MVC và Web API thành một web framework duy nhất.

  • Các ứng dụng ASP.NET Core có thể chạy trên .NET Core hoặc trên .NET Framework hoàn chỉnh.
  • Nó đã được thiết kế để cung cấp một framework tối ưu cho các ứng dụng để triển khai tới cloud hoặc chạy on-premises.
  • Nó bao gồm những modular với các thành phần tối thiểu, do đó bạn giữ được tính linh hoạt trong quá trình xây dựng các giải pháp của mình.
  • Bạn có thể phát triển và chạy các ứng dụng đa nền tảng từ ASP.NET Core trên Windows, Mac và Linux.

Ưu điểm của ASP.NET Core

ASP.NET Core đi kèm với những ưu điểm sau:

  • ASP.NET Core có một số thay đổi kiến trúc dẫn đến modular framework nhỏ hơn.
  • ASP.NET Core không còn dựa trên System.Web.dll. Nó dựa trên một tập hợp nhiều yếu tố của Nuget packages.
  • Điều này cho phép bạn tối ưu ứng dụng của mình chỉ cần những NuGet packages cần thiết.
  • Lợi ích của diện tích bề mặt ứng dụng nhỏ hơn thì bảo mật chặt chẽ hơn, giảm dịch vụ, cải thiện hiệu suất và giảm chi phí.

Với ASP.NET Core, bạn có thể nhận được các cải tiến sau:

  • Xây dựng và chạy các ứng dụng ASP.NET Core đa nền tảng trên Windows, Mac và Linux.
  • Được xây dựng trên .NET Core, hỗ trợ side-by-side app versioning.
  • Công cụ mới giúp đơn giản hóa việc phát triển web hiện đại.
  • Liên kết đơn các web stack như Web UI và API Web.
  • Cấu hình dựa trên môi trường đám mây sẵn có.
  • Được xây dựng dựa trên cho DI [Dependency Injection].
  • Tag Helpers làm cho các Razor makup trở nên tự nhiên hơn với HTML.
  • Có khả năng host trên IIS hoặc self-host.

Tài liệu học ASP.NET Core ở đây.

Đã đăng vào thg 10 27, 2016 6:55 AM 6 phút đọc

Trong bài viết này mình sẽ giới thiệu với các bạn về ASP.NET CORE. Một bước chuyển mình cực kỳ mạnh mẽ của nền tảng .NET

  • Khi nhắc đến .NET, chúng ta thường nghĩ đến Mã Nguồn đóng, Only Window, Build with Visual Studio. Nhưng sau khi cho ra mắt ASP.NET CORE 1, Microsoft đã thay đổi hoàn toàn suy nghĩ của chúng ta với các điểm sau:
    • Open source Microsoft đã open source .NET và public trên github để thu hút các lập trình viên cũng như tận dùng sức mạnh của cộng đồng.
    • Build for Windows, Mac, or Linux Vâng, có lẽ khoảng vài năm trước ít ai nghĩ chuyện này có thể xảy ra nhưng bây giờ, Microsoft đã rất thân thiện với linux và .NET run with linux chính là một minh chứng rõ nét.
    • Visual Studio Code không còn gắn chặt với Visual studio, ASP.NET CORE bây giờ có thể viết với Visual studio code [free] trên cả Window, Linux và Mac.
  • ASP.NET Core là một nền tảng mã nguồn mở, cross-platform framework cho việc xây dựng và kết nối các ứng dụng web hiện đại chẳng hạn như ứng dụng web, Internet of Thing, Mobile Backend - Web API
  • ASP.NET Core cung cấp một kiến trúc để tối ưu hóa việc xây dựng các ứng dụng đám mây [microsoft azure] hoặc các ứng dụng độc lập. Bạn có thế phát triển ứng dụng ASP.NET Core đa nên tảng[Window, Mac, Linux], với mã nguồn mở tại Github.
  1. Build ứng dụng ASP.NET CORE với Visual studio
    • Chúng ta cần Visual Studio 2015 Update 3 và .NET Core 1.0.1 - VS 2015 Tooling Preview 2 các bạn có thể tìm link và download tại đây
  • Tạo web app Mở Visual studion chọn new Project hoặc file -> new -> Project

  • Chọn ASP.NET Core Web Application [.NET Core] và nhập tên cho project -> click OK

  • Chọn Web application, bỏ check Host in the cloud và click OK

  • Visual studio sẽ sinh cho bạn một project với ASP.NET MVC, NET Core và sử dụng theme default. Ấn F5 để build project bạn sẽ thấy kết quả như sau:

  • Visual studio sẽ start IIS Express và chạy ứng dụng với một cổng random. Sử dụng Ctrl + F5 có thế giúp bạn nhìn những thay đổi nhanh hơn, VD: sửa, lưu file và f5 trình duyệt để thấy những thay đổi nhanh chóng.

4 Giới thiệu về MVC trong ASP.NET Core

  • Model-View-Controller [MVC] là mô hình kiến trúc xây dựng ứng dụng tách ra làm ba phần chính riêng biệt Model, View và Controller. MVC giúp bạn xây dựng ứng dụng dễ dàng bảo trì, cập nhật hơn các ứng dụng truyền thống.
    • Model: là các class đại diện cho dữ liệu và logic để thực thi nghiệp vụ của dữ liệu đó. Thông thường, mỗi model sẽ đại diện cho một table trong database.
    • View: là thành phần hiển thị giao diện người dùng [UI] của ứng dụng. Nhìn chung, view sẽ hiển thị dữ liệu từ model.
    • Controller: Có nhiệm vụ xử lý các request từ trình duyệt [Get, Post, PUT ...] và sau đó trả về các data tương ứng cho view.
  • MVC giúp bạn tách biệt các phần của ứng dụng[input logic, business logic, và UI logic] và cung cấp kết nối giữa các lớp này. Sự tách biệt này giúp bạn dễ dàng quản lý những ứng dụng phức tạp vì nó cho phép bạn làm việc trên một phần và không ảnh hưởng đến những phần khác. VD: bạn có thể làm việc cùng lúc trên 2 model khác nhau.Ảnh dưới đây cho bạn thấy cấu trúc thư mục đã tạo khi create app ở trên

5 Tạo một controller

  • trong Solution Explorer, click chuột phải Controllers > Add > New Item... > MVC Controller Class

  • Nhập tên "HelloWorldController" và nhập đoạn code dưới đây vào controller mới tạo
using Microsoft.AspNetCore.Mvc; using System.Text.Encodings.Web; namespace MvcMovie.Controllers { public class HelloWorldController : Controller { public string Index[] { return "This is my default action..."; } public string Welcome[] { return "This is the Welcome action method..."; }
  • Mỗi một phương thức public có thể được coi là một điểm cuối trong HTTP endpoint. Trong controller trên, cả hai method đều return string. Chú ý đến comment trước mỗi method.
    • Comment thứ nhất là phương thức GET với url là /HelloWorld/, trong khi comment thứ hai cũng là phương thức GET nhưng URL lại là /HelloWorld/+tên method /HelloWorld/Welcome/.
  • build ứng dụng[ctrl + f5] và thêm "HelloWorld" vào URL ta sẽ thấy ứng dụng nhảy vào hàm index và return "This is my default action...".

  • Để giải thích việc method index được gọi trong khi url không trỏ trực tiếp chúng ta cần xem file Startup.cs
app.UseMvc[routes => { routes.MapRoute[ name: "default", template: "{controller=Home}/{action=Index}/{id?}"]; }];
  • Có thể diễn giải đoạn trên như sau: Khi không có controller nào được gọi thì sẽ gọi đến controller Home và khi không có method nào đc goi thì sẽ trỏ đến method index. Ở ví dụ trên chúng ta đã gọi đến controller HelloWorld và không có method nên sẽ trỏ đến method index.

6 Kết Luận


All rights reserved

Video liên quan

Chủ Đề