سؤال

وأنا أقوم بتحميل ملف من موقع على شبكة الانترنت ولدي الارتباط. ولكن الجزء نهاية الرابط يتغير إلى الشهر الحالي. ولست بحاجة لحلقة من خلال الرابط، إجراء تغييرات على الجزء شهر من ذلك، وتحميل الملف.

وسؤالي الأول هو كيفية معرفة ما إذا كان قد فشل ارتباط، للذهاب إلى رابط آخر؟ ثانيا، يمكن يمكنك توحي لي وسيلة لحلقة من خلال الرابط؟

في البداية كنت توفير الارتباط في النص.

وهنا هو رمز الحالي

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");
             }
هل كانت مفيدة؟

المحلول

وإذا كان عن طريق "حلقة من خلال وصلة" تقصد توليد الارتباط الصحيح، يمكنك القيام بذلك:

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";

وللتحقق مما إذا نجحوا تحميل، وقبض على WebException:

System.Net.WebClient we = new System.Net.WebClient();
try
{
    we.DownloadFile("", "");
}
catch (System.Net.WebException wex)
{
    //failed!
}
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top