Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var query =
- from file in SelectedFiles.ToObservable()
- from document in Observable.FromAsyncPattern<int, string, DocumentType, Document>(_dataService.BeginCreateEmptyDocument, _dataService.EndCreateEmptyDocument)(SelectedCompany.Id, file.FullName, SelectedDocumentType)
- select Tuple.Create(document, false);
- if (verify) {
- query =
- from r1 in query
- from exists in Observable.FromAsyncPattern<Document, bool>(_dataService.BeginVerifyDocument, _dataService.EndVerifyDocument)(r1.Item1)
- select Tuple.Create(r1.Item1, exists);
- }
- query
- .Merge()
- .Aggregate(new List<Document>(), (list, result) => {
- if (result.Item2 == false)
- list.Add(result.Item1);
- return list;
- });
- //var documents = new List<Document>();
- List<Document> documents = null;
- query
- .ObserveOnDispatcher()
- .Subscribe(
- i => {
- //documents.Add(i); UpdateStatus(String.Format("Created new Document for {0}", i.Path));
- documents = i;
- },
- e => UpdateStatus("Error parsing filename.", e),
- () => {
- if (documents == null) return;
- _uiService.ShowView(ViewNames.DocumentsListView, documents);
- }
- );
Advertisement
Add Comment
Please, Sign In to add comment