Tôi đang tạo chế độ xem cho mỗi màn hình trong ứng dụng ASP.NET MVC của tôi. Tôi đặt tất cả logic để tạo mô hình chế độ xem trong một lớp học builder. Thông thường, có logic đặc biệt để chuyển đổi các đối tượng dữ liệu thành các mô hình xem, bao gồm tổng hợp, lọc và sắp xếp. Mỗi người xây dựng được thông qua một bộ phụ thuộc phụ thuộc, là một đối tượng có chứa các thuộc tính cho mỗi phụ thuộc (kho, các nhà xây dựng khác, v.v ...).Quy ước đặt tên về mô hình xem để tránh tên dài
Vấn đề là tên của tôi đang nhận được thực sự dài. Một tập phụ thuộc thường sẽ có một cái tên sáng tác theo cách này:
xem mô hình tên + Builder + DependencySet
Xem mô hình thường có những cái tên sáng tác của bạn hiện đang ở và những đứa trẻ. Ví dụ: hệ thống của tôi có định nghĩa nhà cung cấp được phân loại. Vì vậy, để hiển thị các định nghĩa nhà cung cấp thuộc một thể loại, tôi có một mô hình điểm được gọi là:
CategoryProviderDefinitionListViewModel
Nó sẽ giống như thế này:
public sealed class CategoryProviderDefinitionListViewModel
{
public long CategoryId { get; set; }
public string CategoryName { get; set; }
public ProviderDefinitionViewModel[] ProviderDefinitions { get; set; }
}
Vì vậy, tôi người xây dựng được gọi là
CategoryProviderDefinitionListViewModelBuilder
Vì vậy, thiết lập sự phụ thuộc của tôi được gọi là
CategoryProviderDefinitionListViewModelBuilderDependencySet
Đó chỉ phù hợp trên màn hình. Những ngón tay nghèo của tôi mệt mỏi. Hơn nữa, một số màn hình gần như hiển thị cùng một dữ liệu, vì vậy các tên kiểu xem của chúng gần như giống nhau. Khi tôi xem qua thư mục của mình, thật khó để tìm ra các lớp mô hình xem cụ thể mà tôi đang tìm kiếm.
Lý tưởng nhất là tôi có thể nhóm các lớp mô hình chế độ xem của mình lại với nhau, liên kết chúng với (các) chế độ xem nơi chúng được sử dụng. Sẽ tốt hơn nếu tránh va chạm và đặt tên càng ngắn càng tốt, đồng thời giữ cho chúng có ý nghĩa. Có ai tìm thấy tổ chức quy ước/thư mục đặt tên hoạt động tốt trong trường hợp này không?
[DTO là một điều khác nhau] (http://stackoverflow.com/questions/1051182/what-is-data-transfer-object), để bắt đầu, có thể có DTO ** và * * xem các mô hình trong cùng một giải pháp. – Liam
Đó là sự thật. Và nếu tình hình đó nảy sinh, tôi có lẽ cũng sẽ lựa chọn một quy ước đặt tên khác. Nhưng điểm tốt. – CodeMonkey