C# 正在中止使用WebClient上载文件线程
当我写入一个文件并将同一个文件上传到FTP站点时,我发现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
线程被中止了
错误
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;没用。