コード例 #1
0
ファイル: DocumentViewModel.cs プロジェクト: barrett2474/CMS2
        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];
            }
        }
コード例 #2
0
ファイル: DatabaseLoader.cs プロジェクト: barrett2474/CMS2
 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;
 }
コード例 #3
0
        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);
        }