Những thuộc tính của Routes trong ASP.NET Core

 9/4/2019 |  Admin   2452 lượt xem

(netcore.vn) - Những thuộc tính của Routes trong ASP.NET Core

Trong chương này, chúng ta sẽ tìm hiểu một cách tiếp cận khác để định tuyến và đó là định tuyến dựa trên thuộc tính. Với định tuyến dựa trên thuộc tính, chúng ta có thể sử dụng các thuộc tính C # trên các lớp trình điều khiển và trên các phương thức bên trong các lớp này. Các thuộc tính này có siêu dữ liệu cho ASP.NET Core biết khi nào cần gọi một bộ điều khiển cụ thể.

  • Nó là một thay thế cho định tuyến dựa trên quy ước.

  • Các tuyến đường được đánh giá theo thứ tự xuất hiện, thứ tự mà bạn đăng ký, nhưng khá phổ biến để ánh xạ nhiều tuyến đường, đặc biệt nếu bạn muốn có các tham số khác nhau trong URL hoặc nếu bạn muốn có các chữ khác nhau trong URL.

Thí dụ

Hãy để chúng tôi lấy một ví dụ đơn giản. Mở dự án FirstAppDemo và chạy ứng dụng trong trình duyệt. Khi bạn chỉ định / about, nó sẽ tạo ra đầu ra sau

Simple Example

Điều chúng tôi muốn ở đây là khi chúng tôi chỉ định / giới thiệu, ứng dụng sẽ gọi hành động Điện thoại của AboutContoder. Tại đây, chúng ta có thể thực thi một số tuyến rõ ràng cho bộ điều khiển này bằng thuộc tính Tuyến. Thuộc tính này nằm trong không gian tên Microsoft.AspNet.Mvc.

Sau đây là việc triển khai AboutContoder trong đó các tuyến thuộc tính được thêm vào.

using Microsoft.AspNet.Mvc;  

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Threading.Tasks;  

namespace FirstAppDemo.Controllers { 
   [Route("about")] 
   public class AboutController { 
      [Route ("")] 
      public string Phone() { 
         return "+49-333-3333333"; 
      }  
      [Route("country")] 
      public string Country() { 
         return "Germany"; 
      } 
   } 
}

Ở đây, chúng tôi muốn tuyến đường này trông giống như và đối với hành động Điện thoại, chúng tôi đã chỉ định một chuỗi trống, điều đó có nghĩa là chúng tôi không cần hành động được chỉ định để có được phương thức này. Người dùng chỉ cần đến / về. Đối với hành động Quốc gia, chúng tôi đã chỉ định quốc gia trên mạng trong thuộc tính tuyến đường. Hãy để chúng tôi lưu AboutContoder, làm mới trình duyệt của bạn và đi tới / about và sẽ cung cấp cho bạn hành động Điện thoại.

Mobile Number

Hãy để chúng tôi chỉ định / về / quốc gia. Điều này sẽ cho phép bạn có được hành động của Quốc gia đó.

Same Country Result

Nếu bạn muốn một phân đoạn URL chứa tên của bộ điều khiển của bạn, điều bạn có thể làm là thay vì sử dụng tên bộ điều khiển một cách rõ ràng, bạn có thể sử dụng bộ điều khiển mã thông báo bên trong dấu ngoặc vuông. Điều này báo cho ASP.NET MVC sử dụng tên của bộ điều khiển này ở vị trí này như được hiển thị trong chương trình sau.

using Microsoft.AspNet.Mvc; 

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Threading.Tasks;  

namespace FirstAppDemo.Controllers { 
   [Route("[controller]")] 
   public class AboutController { 
      [Route ("")] 
      public string Phone() { 
         return "+49-333-3333333"; 
      }  
      [Route("[action]")] 
      public string Country() { 
         return "Germany"; 
      } 
   } 
} 

This way, if you ever rename the controller, you don't have to remember to change the route. The same goes for an action and implicitly there is a slash (/) between the controller and the action. It is a hierarchical relationship between the controller and the action just like it is inside the URL. Let us save this controller again. Most probably, you will see the same results.

Rename the Controller

Let us specify the /about/country. This will allow you to get to that Country action.

Rename the Controller

liên quan

Tìm hiểu tất tần tật về Model Validation trong ASP.NET Core  4160

 2/23/2020

HTTP 400 Responses có gì mới trong web APIs của ASP.NET Core

Xem chi tiết 

HTTP 400 Responses có gì mới trong web APIs của ASP.NET Core  2799

 2/23/2020

HTTP 400 Responses có gì mới trong web APIs của ASP.NET Core

Xem chi tiết 

ASP.NET Core - Đăng nhập và đăng xuất  20216

 9/5/2019

Sau đây, NET Core VN xin giới thiệu 2 chức năng đăng nhập và đăng xuất trong ASP.NET Core.

Xem chi tiết 

ASP.NET Core - CRUD cho User module  4932

 9/5/2019

Sau đây, NET Core VN xin giới thiệu CRUD thông tin User trong ASP.NET Core.

Xem chi tiết 

Identity Migrations trong ASP.NET Core  2990

 9/5/2019

Sau đây, .NET Core VN xin giới thiệu về chạy migration cho Identity trong ASP.NET Core.

Xem chi tiết 

Cấu hình Identity trong ASP.NET Core  4276

 9/5/2019

Cấu hình Identity trong ASP.NET Core

Xem chi tiết 

Thuộc tính Authorize trong ASP.NET Core  5257

 9/5/2019

Thuộc tính Authorize trong ASP.NET Core

Xem chi tiết 

Tổng quan về Identity trong ASP.NET Core  5359

 9/5/2019

Tổng quan về Identity trong ASP.NET Core

Xem chi tiết 

ASP.NET Core - Razor Edit Form là gì?  2465

 9/5/2019

ASP.NET Core - Razor Edit Form là gì?

Xem chi tiết 

ASP.NET Core - Razor Tag Helpers là gì?  2562

 9/5/2019

ASP.NET Core - Razor Tag Helpers là gì?

Xem chi tiết 
Like Fanpage Để Ủng Hộ Chúng Tôi Duy Trì Website