[英]Uploading a file to server using c#
我试图将文件上传到服务器,然后将路径保存在数据库中,但是文件上传不起作用,它没有例外,但是当我检查文件夹时我看不到任何内容这里上传的文件是我的代码:
private void bBrowse_Click(object sender, EventArgs e)
{
long size = -1;
string path = "";
openFileDialog1.FileName = "";
openFileDialog1.Filter = "All files (*.*)|*.*|All files (*.*)|*.*";
DialogResult result = openFileDialog1.ShowDialog(); // Show the dialog.
if (result == DialogResult.OK) // Test result.
{
openFileDialog1.Title = "Attach speech assessment document";
openFileDialog1.Filter = "Doc Files|*.doc|Docx File|*.docx|PDF doc|*.pdf";
openFileDialog1.InitialDirectory = @"C:\";
fileName = System.IO.Path.GetFileName(openFileDialog1.FileName);
path = Path.GetDirectoryName(openFileDialog1.FileName);
labelFileName.Text = path + "/" + fileName;
}
Console.WriteLine(path); // <-- Shows file path in debugging mode.
Console.WriteLine(result); // <-- For debugging use.
}
private void buttonAdd_Click(object sender, EventArgs e)
{
try
{
WebClient client = new WebClient();
NetworkCredential nc = new NetworkCredential("username", "password");
Uri addy = new Uri(@"http://url/public_html/assessment" + fileName);
client.Credentials = nc;
byte[] arrReturn = client.UploadFile(addy, labelFileName.Text);
MessageBox.Show(arrReturn.ToString());
}
catch (Exception ex1)
{
MessageBox.Show(ex1.Message);
}
由于@William的评论,我解决了它,我忘了添加斜杠,而且我还在url中写了http而不是ftp,这是主要的错误!
编辑后的代码:
private void bBrowse_Click(object sender, EventArgs e)
{
long size = -1;
string path = "";
openFileDialog1.FileName = "";
openFileDialog1.Filter = "All files (*.*)|*.*|All files (*.*)|*.*";
DialogResult result = openFileDialog1.ShowDialog(); // Show the dialog.
if (result == DialogResult.OK) // Test result.
{
openFileDialog1.Title = "Attach speech assessment document";
openFileDialog1.Filter = "Doc Files|*.doc|Docx File|*.docx|PDF doc|*.pdf";
openFileDialog1.InitialDirectory = @"C:\";
fileName = System.IO.Path.GetFileName(openFileDialog1.FileName);
path = Path.GetDirectoryName(openFileDialog1.FileName);
labelFileName.Text = path + "/" + fileName;
}
Console.WriteLine(path); // <-- Shows file path in debugging mode.
Console.WriteLine(result); // <-- For debugging use.
}
private void buttonAdd_Click(object sender, EventArgs e)
{
try
{
WebClient client = new WebClient();
NetworkCredential nc = new NetworkCredential("username", "password");
Uri addy = new Uri(@"ftp://url/public_html/assessment/" + fileName);
client.Credentials = nc;
byte[] arrReturn = client.UploadFile(addy, labelFileName.Text);
MessageBox.Show(arrReturn.ToString());
}
catch (Exception ex1)
{
MessageBox.Show(ex1.Message);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.