当前位置:编程学习 > C#/ASP.NET >>

关于将excel的数据上传到数据库,在服务器找不到路径

做了一个将excel表格数据导入数据库的功能,在本地测试可以,把功能放到服务器上却不行了,说不是有效路径,找不到文件,请问怎么解决 excel 数据库 服务器 asp --------------------编程问答-------------------- 看看文件夹的权限。。
另外无代码无真相 --------------------编程问答-------------------- 附上代码
if (FileUpload1.HasFile == false)//HasFile用来检查FileUpload是否有指定文件
        {
            Response.Write("<script>alert('请您选择Excel文件')</script> ");
            return;//当无文件时,返回
        }
        string IsXls = System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();//System.IO.Path.GetExtension获得文件的扩展名
        System.IO.Path.GetExtension(FileUpload1.FileName).ToString().ToLower();//
        if (IsXls != ".xls" && IsXls != ".xlsx")  //
        {
            Response.Write("<script>alert('只可以选择Excel文件')</script>");
            return;//当选择的不是Excel文件时,返回
        }
        this.GridView1.DataSource = ExcelDataSource();
        this.GridView1.DataBind(); --------------------编程问答-------------------- 服务器路径可能和本地不同 --------------------编程问答-------------------- 提示很明显了,就是路径问题 --------------------编程问答-------------------- 你要变为服务器上的路径呀 --------------------编程问答-------------------- 路径问题 
上代码 --------------------编程问答--------------------
    protected void imgSave_Click(object sender, EventArgs e)
    {
        if (fupload.PostedFile.FileName == "")
        {
            ClientScript.RegisterClientScriptBlock(this.GetType(), "check", "<script language='javascript'>alert('请选择上传的文件');</script>");
            return;
        }
        //上传文件到服务器
        string filepath = "";
        if ((filepath = SaveFile()) == "")
        {
            MyShowMessageBox.Show(this, "文件上传失败!");
            return;
        }
        //资料处理
        ImportData(filepath);


        //删除上传文件
    }



    /*!
     *  * @brief [保存文件返回文件路径] 
     *  * 
     *  * [保存文件返回文件路径]
     *  * @return private string  
     *  */
    private string SaveFile()
    {

        string FilePath = "";
        string newFileName = GetFileName("\\", fupload.PostedFile.FileName);
        try
        {
            FilePath = HttpContext.Current.Server.MapPath("../Files/");
            newFileName = GetFinalFileName(newFileName);
            FilePath = FilePath + newFileName;
            fupload.PostedFile.SaveAs(FilePath);
        }
        catch (Exception ex)
        {
            return "";
        }
        return FilePath;
    }


    /*!
     *  * @brief [获取文件名称] 
     *  * 
     *  * [获取文件名称带后缀]
     *  * @param pat 文件名前面的符号
     *  * @param url 
     *  * @return private string  
     *  */
    private string GetFileName(string pat, string url)
    {
        int position;
        position = url.LastIndexOf(pat);
        return url.Substring(position + 1);
    }

    /*!
     *  * @brief [获取新的生成文件名称] 
     *  * 
     *  * [获取文件名称带后缀]
     *  * @param fileName 旧文件名称
     *  * @return private string  
     *  */
    private string GetFinalFileName(string fileName)
    {
        Random rander = new Random();
        string file = fileName;
        file = rander.Next().ToString() + "_" + fileName;
        return file;
    }
--------------------编程问答--------------------
引用 楼主 moshimowanglpq 的回复:
做了一个将excel表格数据导入数据库的功能,在本地测试可以,把功能放到服务器上却不行了,说不是有效路径,找不到文件,请问怎么解决
解决技术问题,先解决自己的工作经验和基本方法问题。

你应该学会断点调试,看看你的代码打开Workbook的那一条代码的变量值是什么。不要靠抄来csdn代码让后就等着要结果,要自己调试。
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,