Tôi đang cố gắng nắm bắt bằng cách viết các mẫu ViewModels có thể kiểm tra trong Silverlight 4. Im hiện đang sử dụng ánh sáng MVVM.Tiêm xây dựng Silverlight vào View Model + Design Mode
Im sử dụng AutoFac và IoCContainer đang hoạt động tốt. Tuy nhiên để tiêm vào constructor của ViewModels, mà đang bị ràng buộc để xem tôi có constructor này chaining:
public UserViewModel() : this(IoCContainer.Resolve<IUserServiceAsync>())
{
}
public UserViewModel(IUserServiceAsync userService)
{
if (this.IsInDesignMode) return;
_userService = userService;
}
Mà không cảm thấy sạch sẽ, nhưng là lựa chọn tốt nhất tôi đã tìm thấy cho đến nay. Tính năng này hoạt động và ứng dụng của tôi hoạt động như mong muốn và có thể kiểm tra bằng điều khiển ngược.
Tuy nhiên, với VM của tôi bị ràng buộc vào quan điểm của tôi như thế này:
<UserControl.DataContext>
<ViewModel:UserViewModel />
</UserControl.DataContext>
Trong các thuộc tính trang XAML của tôi, chế độ thiết kế ở cả VS2010 và Blend doesnt làm việc.
Có cách nào hay hơn để đạt được những gì bạn đang thử trong Silverlight vẫn hoạt động với chế độ thiết kế không? Mất chế độ thiết kế không phải là một bộ ngắt giao dịch nhưng sẽ thuận tiện trong khi học XAML. Một cách sạch sẽ không có chuỗi nào sẽ tốt đẹp mặc dù!
Tôi nghĩ có thể sử dụng AutoFac/IoC để giải quyết chế độ xem cho chế độ xem, như được áp dụng cho phương pháp đánh dấu XAML ở trên và đi xuống tuyến đường này?
Cảm ơn.
Cảm ơn bạn đã trả lời chi tiết! – Jammin