public DocumentViewModel(Document document) { if (document == null) throw new ArgumentNullException("document"); CompositionInitializer.SatisfyImports(this); mDocument = document; SaveButtonCommand = new DelegateCommand<object>(SaveButtonHandler, CanExecuteOkButtonHandler); RemoveButtonCommand = new DelegateCommand<object>(RemoveButtonHandler, CanExecuteDeleteButtonHandler); CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); cmsWebServiceClient.GetDocumentTypesCompleted += cmsWebServiceClient_GetDocumentTypesCompleted; cmsWebServiceClient.GetDocumentTypesAsync(); Areas = new ObservableCollection<Area>(from x in CMS.Cache.Areas where x.IsActive && x.SiteId == CMS.AppSetting.DefaultSiteId select x); cmsWebServiceClient.GetDocumentAuthorsCompleted += cmsWebServiceClient_GetDocumentAuthorsCompleted; cmsWebServiceClient.GetDocumentAuthorsAsync(); cmsWebServiceClient.GetDocumentDisciplinesCompleted += (s, e) => { DocumentDisciplines = new ObservableCollection<DocumentDiscipline>(e.Result); mDisciplinesLoaded = true; OnDataSourceLoaded(); }; cmsWebServiceClient.GetDocumentDisciplinesAsync(); cmsWebServiceClient.GetDocumentPurchaseOrdersCompleted += (s, e) => { DocumentPurchaseOrders = new ObservableCollection<DocumentPurchaseOrder>(e.Result); DocumentPurchaseOrders.Insert(0, new DocumentPurchaseOrder { Name = BLANK, Id = -1 }); mPurchaseOrdersLoaded = true; OnDataSourceLoaded(); }; cmsWebServiceClient.GetDocumentPurchaseOrdersAsync(); if (mDocument.DocumentVersions != null && mDocument.DocumentVersions.Count > 0) { mSelectedVersion = Document.DocumentVersions[0]; } }
public static Task<List<DocumentAuthor>> GetDocumentAuthors() { var task = new TaskCompletionSource<List<DocumentAuthor>>(); var cee = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); cee.GetDocumentAuthorsCompleted += (s, e) => task.SetResult(e.Result); cee.GetDocumentAuthorsAsync(); return task.Task; }
private void LoadDocumentAuthors(NodeView expandedNode) { CmsWebServiceClient cmsWebServiceClient = new CmsWebServiceClient(Utils.WcfBinding, Utils.WcfEndPoint); EventHandler<GetDocumentAuthorsCompletedEventArgs> fetchCompleted = null; fetchCompleted = (s, eventArgs) => { List<DocumentAuthor> docList = eventArgs.Result; foreach (DocumentAuthor author in docList) { NodeView child = new NodeView(expandedNode) { Id = author.Id, Name = author.Name, Description = author.Description, Icon = "/CmsEquipmentDatabase;component/Images/Configuration.png", Type = NodeType.DocumentAuthorNode, SortField = author.Ordinal.ToString(), HasChildren = false }; expandedNode.Children.Add(child); } expandedNode.Sort(); Utils.HideSpinner(expandedNode); cmsWebServiceClient.GetDocumentAuthorsCompleted -= fetchCompleted; }; cmsWebServiceClient.GetDocumentAuthorsCompleted += fetchCompleted; cmsWebServiceClient.GetDocumentAuthorsAsync(false); }