Domanda

Sto scaricando un file da un sito Web e ho il link. Ma la parte finale del collegamento cambia al mese corrente. Devo scorrere il collegamento, apportare modifiche alla parte del mese e scaricare il file.

La mia prima domanda è come sapere se un collegamento non è riuscito, per passare a un altro collegamento? Secondo, puoi suggerirmi un modo per scorrere il collegamento?

Inizialmente fornisco il link in una casella di testo.

Ecco il codice corrente

if (textBox2.Text != "")
             {
                 System.Net.WebClient we = new System.Net.WebClient();
                 we.DownloadFile(textBox2.Text, "c:\\NPPES.zip");
//this is the link                 //"http://nppesdata.cms.hhs.gov/NPPES_Data_Dissemination_July_2009.zip","c:\\NPPES.zip");
                 //string file = "C:\\NPPES.csv";
                 Unzipfile("c:\\NPPES.zip", "c:\\NPPES.csv");
                 MessageBox.Show("Download complete.Select the file to Import data");
             }
È stato utile?

Soluzione

se tramite " passa in rassegna il link " intendi generare un link corretto, puoi farlo:

string curr_month = DateTime.Now.ToString("MMMM_yyyy",
                System.Globalization.CultureInfo.GetCultureInfo("en-US").DateTimeFormat);
string link = "http://nppesdata.cms.hhs.gov/NPPES_Data_Dissemination_" 
             + curr_month
             + ".zip";

per verificare se il download è riuscito, prendi WebException :

System.Net.WebClient we = new System.Net.WebClient();
try
{
    we.DownloadFile("", "");
}
catch (System.Net.WebException wex)
{
    //failed!
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top