Exemplo n.º 1
0
        public async Task AddUrl(string newUrl)
        {
            if (CatalogList.Any(c => c.Url.Equals(newUrl, StringComparison.InvariantCultureIgnoreCase)))
            {
                return; // duplicate url
            }

            if (string.IsNullOrWhiteSpace(newUrl))
            {
                return;
            }

            IsAdding = true;

            await Task.Factory.StartNew(() =>
            {
                string name = CatalogSettings.GetNameFromAssetCatalog(newUrl);

                CatalogList.Add(new CatalogSubscriptionViewModel(newUrl, name));

                WriteToFile();
                ReloadCatalogList();
            }).ContinueWith((result) =>
            {
                IsAdding = false;
            });
        }