Quy ước RESTful chỉ ra việc sử dụng danh từ số nhiều thay vì các đối tượng số ít.
Quy ước đa nguyên hóa để đặt tên bộ điều khiển ASP.NET MVC, tức là
ProductController
hoặc ProductsController
?
Quy ước RESTful chỉ ra việc sử dụng danh từ số nhiều thay vì các đối tượng số ít.
Quy ước đa nguyên hóa để đặt tên bộ điều khiển ASP.NET MVC, tức là
ProductController
hoặc ProductsController
?
Câu trả lời:
Một số Khung công tác MVC sử dụng số nhiều, tuy nhiên, các mẫu dự án MVC chứa một bộ điều khiển được gọi là AccountController, do đó đề xuất đặt tên số ít.
Nó không quan trọng. Như với hầu hết mọi thứ trong khung Asp.net MVC, sự lựa chọn là của bạn. Không có quy ước thực sự.
Đó là ý kiến cá nhân của tôi nhưng điều quan trọng là bạn chọn một kế hoạch và nhất quán!
Tôi sẽ không đồng ý với những câu trả lời trước đây về việc sử dụng số nhiều hoặc số ít và nhất quán. Mỗi bộ điều khiển nên sử dụng một quy ước khác nhau dựa trên việc chúng tương tác với đơn hay nhiều thực thể. Đặc biệt là vì tên bộ điều khiển được sử dụng theo mặc định trong URL.
Trong khi các mẫu dự án sử dụng số ít (HomeController, AccountController), chỉ có một Trang chủ và các hành động Tài khoản chỉ hoạt động trên một tài khoản duy nhất cho phiên. Tôi sẽ không mong đợi các URL của / homes truy cập trang chủ, tôi cũng không muốn vào / account để quản lý cài đặt tài khoản của mình.
HomesController số nhiều sẽ hoạt động cho một trang web bất động sản có các phương pháp liên quan đến việc liệt kê và tìm kiếm nhiều ngôi nhà: / homes / new-lists.
UsersController
lý nếu bạn thiết kế các tuyến đường của mình như /api/users
(tất cả người dùng) và /api/users/{userId}
(một người dùng)
/api/user/{userId}
làm giống như cảm giác nhiều mặc dù, bạn có thể tranh luận rằng ngay cả trong trường hợp đối phó với nhiều người dùng, mà điều khiển của bạn phản ánh các loại thực thể, do đó HomeController
sẽ đối phó với các đơn vị của loại hình Home
, do đó /Home/{homeId}
và/Home/All-Homes/
Khi bạn thêm bộ điều khiển bằng cách sử dụng giàn giáo MVC cho một thực thể Entity Framework, VS2013 đặt tên bộ điều khiển là số nhiều, vì vậy tôi khuyên bạn nên sử dụng mặc định đó để đặt bộ điều khiển cho các thực thể là số nhiều.
CẬP NHẬT: Tôi đã thay đổi quyết định. LouD là chính xác. Nó phụ thuộc vào ngữ cảnh của bộ điều khiển.