C# 正在中止使用WebClient上载文件线程

C# 正在中止使用WebClient上载文件线程,c#,c#-4.0,webclient,C#,C# 4.0,Webclient,当我写入一个文件并将同一个文件上传到FTP站点时,我发现线程被中止了错误 FileIoUtility.WriteDataToFile(skillsSummaryData, SkillSummaryFileLocation); if (!IsFileLocked(SkillSummaryFileLocation)) { using (WebClient myWebClient = new W

当我写入一个文件并将同一个文件上传到FTP站点时,我发现
线程被中止了
错误

 FileIoUtility.WriteDataToFile(skillsSummaryData, SkillSummaryFileLocation);

                if (!IsFileLocked(SkillSummaryFileLocation))
                {
                    using (WebClient myWebClient = new WebClient())
                    {
                        myWebClient.Credentials = new NetworkCredential(FtpUsername, FtpPassword);
                        var uri = new Uri($"{FtpHost}SkillSummary.txt", UriKind.RelativeOrAbsolute);
                        byte[] responseArray = myWebClient.UploadFile(uri, WebRequestMethods.Ftp.UploadFile,
                            SkillSummaryFileLocation);
                        var response = Encoding.ASCII.GetString(responseArray);
                    }
                }
以下是我的WriteDataofile方法:

public static void WriteDataToFile(string data, string fileLocation, bool append = false)
        {
            if (!File.Exists(fileLocation))
            {
                File.Create(fileLocation).Dispose();
            }

            lock (Locker)
            {
                using (FileStream file =
                    new FileStream(fileLocation, FileMode.Append, FileAccess.Write, FileShare.Read))
                {
                    using (StreamWriter writer = new StreamWriter(file, Encoding.Unicode))
                    {
                        writer.Write(data);
                    }
                }
            }
        }
如果我跳过下一行并运行上传,那么它就可以工作了

FileIoUtility.WriteDataToFile(skillsSummaryData, SkillSummaryFileLocation);

异常只提供了线程被中止的。我如何才能做到这一点?

您在尝试使用用户名和密码时可能遇到凭据问题。我将尝试使用默认凭据,该凭据与您的窗口登录凭据相同。@jdweng不确定它如何与凭据相关,但我尝试了myWebClient.credentials=CredentialCache.DefaultCredentials;没用。