- Tôi muốn giới thiệu AttributeRouting, tôi đã viết và sử dụng nó hàng ngày.
- Để bắt đầu, chỉ cần trang trí một hành động với thuộc tính GET. Nuget làm phần còn lại.
- Nuget có.
Tôi thích URL.
Tôi thích nhìn thấy chúng ngay phía trên mã mà chúng ánh xạ tới.
[GET("some/url")]
public ActionResult HotDamn()
Khi bạn làm điều này, bạn có thể ctrl + F "some/url" và đi đúng phương pháp hành động, khá tiện dụng. Nếu bạn thay đổi tên hành động của bạn hoặc di chuyển nó ở một nơi khác, tuyến đường vẫn ở lại với nó và không thay đổi.
[GET("some/url"]
public ActionResult HotDarnCauseCussingIsBad()
Nếu bạn muốn thay đổi URL và vẫn đáp ứng với URL di sản, chỉ cần thêm thuộc tính khác trên một tuổi và đánh dấu nó như là cái mới bằng cách thiết lập thứ tự = 1:
[GET("better/url", Order = 1)]
[GET("some/url")] // order defaults to int.MaxValue
public ActionResult BetterMethodName()
Nếu bạn muốn nhận được cảm giác yên tĩnh, và đi tất cả các cách có ghi đè phương thức HTTP và hỗ trợ GET/POST/PUT/DELETE, bạn chỉ cần đi ngay trên với tự xấu của bạn:
[GET("")]
public ActionResult Index()
[POST("")]
public ActionResult Create()
[PUT("{id}")]
public ActionResult Update()
[DELETE("{id}")]
public ActionResult Delete()
tôi sử dụng lib này tất cả các thời gian, và làm nó nên tôi coul d. Tôi đã sử dụng nó trong một năm rưỡi và chưa bao giờ gặp rắc rối với việc định tuyến hoặc tìm kiếm nơi mọi thứ diễn ra hoặc tự hỏi tại sao tuyến đường A khớp với tuyến B. Thay vào đó là siêu dễ sử dụng, có một vài tùy chọn cấu hình và làm cho định tuyến đơn giản hơn 100x (theo ý kiến của tôi).
Bất cứ điều gì bạn chọn, tôi chắc chắn khuyên bạn ít nhất là thử thuộc tính dựa trên định tuyến, cho dù AR hay cái gì khác. Có thể không phải là tách trà của tất cả mọi người, nhưng tôi hoàn toàn thích nó.
Bạn có thể chia sẻ thử nghiệm đó không? – sashaeve
@sashaeve không thể nói nó đẹp, nhưng ở đây bạn đi: https://gist.github.com/1555885 –