2008-11-24 34 views
5

là có cách dễ dàng để giải quyết vấn đề sau.Vấn đề với NVelocity, foreach và hai Danh sách

Giả sử tôi tìm nạp một IList với một số sách trong bộ điều khiển của tôi từ mô hình của tôi. Bây giờ tôi muốn làm giàu đầu ra và lấy một bản xem trước từ Amazon với một mô hình khác từ một khung bên ngoài và lấy một IList khác.

Bây giờ tôi đặt cả hai người vào một túi tài sản.

Trong NVelocity tôi sử dụng #foreach cho Danh sách sách, nhưng làm cách nào tôi có thể truy cập vào amazonbooklist bằng bản xem trước phù hợp? Tôi không thể sử dụng $ amazonbook [index], trong đó chỉ mục sẽ là isbn. Tôi có thực sự cần phải đặt cả hai danh sách trong một danh sách lớn với một giả định đơn giản chỉ chứa hai đối tượng khác?

Hãy nhớ rằng, cả hai mô hình đều từ các khung công tác khác nhau và không thể được đặt trong một khuôn khổ. Cả hai khuôn khổ phải ở riêng biệt. Tôi cố gắng để giải quyết vấn đề NVelocity và dĩ nhiên, vì vấn đề này chỉ là ví dụ, chúng tôi không bán sách;)

Trả lời

1

Có thể có một giải pháp đơn giản hơn, nhưng tôi sẽ tạo ra một lớp thứ ba như vậy

class BookList{ 
     MyBookObject  a; 
     AmazonBookObject b; 
} 

danh sách lớp thứ ba này có thể được chuyển đến chế độ xem của bạn cùng một lúc.

+0

Vì vậy, đây là một phần của bộ điều khiển hay tôi nên tạo ra một mô hình cho thu thập dữ liệu này? –

+0

Tôi sẽ nói điều đó tùy thuộc vào bạn - bạn có thể làm điều này bằng cách sử dụng LINQ và một loại ẩn danh nếu bạn không muốn một lớp học treo quanh, nhưng điều đó hạn chế khả năng kiểm thử của bạn một chút. Sử dụng một mô hình sẽ là cách tiếp cận của tôi và ủy quyền chức năng này cho một dịch vụ riêng biệt để giữ cho đèn điều khiển. – Bittercoder

Các vấn đề liên quan