0

我需要这方面的帮助,我将文件目录插入数据库,但它没有考虑数据库中的 txtStoryTitle.Text,例如,如果我在 txtStoryTitle 中键入 HelloWorld。它在数据库中显示为 Images/Story//(filename) 而不是 Images/Story/HelloWorld/(filename)。我正在使用 MySQL(工作台)。

请给我一个建议/解决方案,提前谢谢!

以下是部分代码:

    protected void AjaxFileUpload1_UploadComplete(object sender, AjaxControlToolkit.AjaxFileUploadEventArgs e)
    {
        EnsureDirectoriesExist();


        String filepathImage = (@"Images/Story/" + txtStoryTitle.Text + "/" + e.FileName);


        AjaxFileUpload1.SaveAs(Server.MapPath(filepathImage));


        Session["filepathImage"] = filepathImage;

    }

   public void EnsureDirectoriesExist()
    {
        if (!System.IO.Directory.Exists(Server.MapPath(@"Images/Story/" + txtStoryTitle.Text + "/")))
        {
            System.IO.Directory.CreateDirectory(Server.MapPath(@"Images/Story/" + txtStoryTitle.Text + "/"));
        }
    }

 protected void btnDone_Click(object sender, EventArgs e)
    {
        if (Session["filepathImage"] != null)
        {
            string filepathImage = Session["filepathImage"] as string;
            act.ActivityName = dropListActivity.SelectedItem.Text;
            act.Title = txtStoryTitle.Text;

            act.FileURL = filepathImage;

            daoStory.Insert(act);
            daoStory.Save();

        }
4

1 回答 1

1

根据您的代码..文件路径是“Images/Story/”+ txtStoryTitle.Text +“/”+ e.FileName”,并在提供 txtStoryTitle.Text 后保存为“Images/Story//FileName”.. 然后它表示 txtStoryTitle.Text 不包含任何文本..

如果它在 .Net 中,请确保将txtStoryTitle 文本框的autopostback属性设置为 true。如果它已经是真的,那么试着找出为什么这个文本框不抵抗它的状态。

于 2013-05-16T07:44:46.330 回答