using System; using System.Linq; using DevExpress.Mvvm.POCO; using DevExpress.DevAV.Common.Utils; using DevExpress.DevAV.DevAVDbDataModel; using DevExpress.Mvvm.DataModel; using DevExpress.DevAV; using DevExpress.DevAV.Common.ViewModel; namespace DevExpress.DevAV.ViewModels { /// /// Represents the Orders collection view model. /// public partial class OrderCollectionViewModel : CollectionViewModel { /// /// Creates a new instance of OrderCollectionViewModel as a POCO view model. /// /// A factory used to create a unit of work instance. public static OrderCollectionViewModel Create(IUnitOfWorkFactory unitOfWorkFactory = null) { return ViewModelSource.Create(() => new OrderCollectionViewModel(unitOfWorkFactory)); } /// /// Initializes a new instance of the OrderCollectionViewModel class. /// This constructor is declared protected to avoid undesired instantiation of the OrderCollectionViewModel type without the POCO proxy factory. /// /// A factory used to create a unit of work instance. protected OrderCollectionViewModel(IUnitOfWorkFactory unitOfWorkFactory = null) : base(unitOfWorkFactory ?? UnitOfWorkSource.GetUnitOfWorkFactory(), x => x.Orders, query => query.Include(x => x.Store).Include(x => x.Customer).ActualOrders().OrderBy(x => x.InvoiceNumber)) { } } }