Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用asp.net c#web窗体应用程序中的文件上载控件将文档上载到服务器_C#_Asp.net - Fatal编程技术网

无法使用asp.net c#web窗体应用程序中的文件上载控件将文档上载到服务器

无法使用asp.net c#web窗体应用程序中的文件上载控件将文档上载到服务器,c#,asp.net,C#,Asp.net,我有一个asp.net c#web表单应用程序,它使用文件上载控件将文档加载到特定文件夹。上载文件的位置是~\Assignments\assignment\u docs 错误代码为: 找不到路径的一部分 'E:\web\me\Assignments\assignment\u docs\filename.xlsx' 以下是隐藏的代码: protected void btn_fuc_assnmt_doc_Click(object sender, EventArgs e) {

我有一个asp.net c#web表单应用程序,它使用文件上载控件将文档加载到特定文件夹。上载文件的位置是~\Assignments\assignment\u docs

错误代码为:

找不到路径的一部分 'E:\web\me\Assignments\assignment\u docs\filename.xlsx'

以下是隐藏的代码:

protected void btn_fuc_assnmt_doc_Click(object sender, EventArgs e)
        {
            int i = 0;
            string filename = fuc_assnmt_doc.FileName;
            if (fuc_assnmt_doc.HasFile)
            {
                while (System.IO.File.Exists(Server.MapPath("~/Assignments/assignment_docs/") + filename))
                {
                    i++;
                    filename = fuc_assnmt_doc.FileName + " (" + i.ToString() + ")";
                }
                fuc_assnmt_doc.PostedFile.SaveAs(Server.MapPath("~/Assignments/assignment_docs/") + filename);
            }

            SqlConnection azunl_cnxn = new SqlConnection("Data Source=tcp:s09.winhost.com;Initial Catalog=XXXX;User ID=XXXX;Password=XXXX;Integrated Security=False;");
            {
                SqlCommand new_doc_cmd = new SqlCommand("Insert Into tbl_assnmt_doc(assnmt_doc_title, assnmt_doc_type, assnmt_doc_upld_by ,assnmt_doc_upld_dt, assnmt_doc_path, assnmt_doc_desc, assnmt_id_fk) Values(LTRIM(RTRIM(@assnmt_doc_title)), LTRIM(RTRIM(@assnmt_doc_type)), LTRIM(RTRIM(@assnmt_doc_upld_by)), LTRIM(RTRIM(@assnmt_doc_upld_dt)), LTRIM(RTRIM(@assnmt_doc_path)), LTRIM(RTRIM(@assnmt_doc_desc)), LTRIM(RTRIM(@assnmt_id_fk)))", azunl_cnxn);

                new_doc_cmd.Parameters.AddWithValue("@assnmt_doc_title", assnmt_doc_title_txt.Text);
                new_doc_cmd.Parameters.AddWithValue("@assnmt_doc_type", assnmt_doc_type_ddl.Text);
                new_doc_cmd.Parameters.AddWithValue("@assnmt_doc_upld_by", System.Web.HttpContext.Current.User.Identity.Name);
                new_doc_cmd.Parameters.AddWithValue("@assnmt_doc_upld_dt", DateTime.Now.ToString());
                new_doc_cmd.Parameters.AddWithValue("@assnmt_doc_path", Server.MapPath("~/Assignments/assignment_docs/") + filename);
                new_doc_cmd.Parameters.AddWithValue("@assnmt_doc_desc", assnmt_doc_desc_txt.Text);
                new_doc_cmd.Parameters.AddWithValue("@assnmt_id_fk", hdn_assnmt_id_fk.Value);

                azunl_cnxn.Open();
                new_doc_cmd.ExecuteNonQuery();
                azunl_cnxn.Close();

                if (IsPostBack)
                {
                    assnmt_doc_title_txt.Text = "";
                    assnmt_doc_type_ddl.SelectedValue = "";
                    assnmt_doc_desc_txt.Text = "";
                    hdn_assnmt_id_fk.Value = "";

                    gv_assnmt_docs.DataBind();
                    lbl_new_doc_submitted.Text = ("Your new document has been successfully submitted.");

                }
            }            
        }

这在我的本地主机上的dev中正常工作,但在我的Winhost服务器上尝试时出现错误。

是否检查了服务器目录上的写入权限?我是通过IIS完成的,对吗?我可以在IIS中查看我的站点,但在该站点下没有可用的“应用程序池”。当我查看我的本地主机时,它是可用的,只是不在现场。我对IIS了解不多,因此非常感谢您提供更多帮助。请使用Windows资源管理器检查“~/Assignments/assignment\u docs/”,右键单击并检查是否未选择只读选项。谢谢JCM。我不知道为什么,但我可以看到生产服务器上的assignment_docs文件夹,但我无法浏览它-找不到它。因此,我只是将所有文件再次发送到服务器,经过两次尝试后,它现在可以看到文件夹,并按预期工作。