Logic trình bày là gì và có thể chấp nhận được bao nhiêu trong lượt xem?


13

Trong ứng dụng web của tôi, tôi phải cung cấp một biểu mẫu để tạo và chỉnh sửa. Các hình thức để tạo và chỉnh sửa có những khác biệt nhỏ, vì vậy tôi nghĩ đến việc làm một cái gì đó như thế này theo quan điểm của tôi:

<form>
// a lot of htnl goes here 
@if (editing)
{
  // some more fields shown in edit mode
}
@if(!editing)
{
 // some stuff shown in create mode
}

Tôi đã luôn cố gắng không đưa bất kỳ iftuyên bố nào vào quan điểm của mình, nhưng lần này tôi không thấy bất kỳ tùy chọn nào khác ngoại trừ việc sao chép một phần lớn HTML ở hai nơi mà tôi không muốn làm. Đây có phải là phần trình bày logic logic phù hợp và có bất kỳ lựa chọn nào khác không?

Câu trả lời:


17

Logic trình bày bao gồm logic và các tính toán cần thiết để trình bày dữ liệu kinh doanh theo đúng cách cho một quan điểm cụ thể.
Đối với các chế độ xem đồ họa phức tạp, đây có thể là các phép tính khá phức tạp (ví dụ: tính kích thước của mỗi lát bánh và vị trí của nhãn cho biểu đồ hình tròn), nhưng đặc điểm chính là nó chỉ tính toán thông tin có liên quan đến hiện tại xem và nó không sửa đổi dữ liệu kinh doanh theo bất kỳ cách nào.

Việc lựa chọn các trường cho chế độ chỉnh sửa / tạo có sử dụng logic trình bày hợp lý hay không là điều gây tranh cãi. Một phần nó phụ thuộc vào loại và số lượng tùy biến.
Ví dụ: nếu sự khác biệt chỉ là thay đổi tiêu đề hoặc hiển thị một hoặc hai trường dưới dạng chỉ đọc ở một trong các chế độ, thì đó có thể là lựa chọn phù hợp để có một chế độ xem và chọn chế độ động.
Mặt khác, phản ứng đầu tiên của tôi là nó thực sự phải là hai chế độ xem khác nhau, trong đó các phần chung được nhập từ tệp thứ ba (tương tự như thông thường đầu trang và chân trang được thêm vào chế độ xem).


12

Có vẻ hoàn toàn hợp lý khi sử dụng một hoặc hai câu lệnh @if trong chế độ xem Dao cạo.
Họ đã thêm @if vào Dao cạo - nó có nghĩa là được sử dụng.

Mã của bạn có thể được rút ngắn thành một @if:

@if (editing)
{
  // some more fields shown in edit mode
}
else
{
 // some stuff shown in create mode
}

Một cách khác là sử dụng ba khung nhìn:

  • Chế độ xem một phần có chứa HTML chung
  • Tạo chế độ xem (gọi chế độ xem một phần)
  • Chỉnh sửa chế độ xem (cũng gọi chế độ xem một phần)

Bạn có thể kiểm tra DisplayTemsheet và EditorTemsheet, đây là một cách tốt để phân chia các chế độ xem chỉ đọc và có thể chỉnh sửa.

http://www.growingwiththeweb.com/2012/12/aspnet-mvc-display-and-editor-temsheet.html

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.