在服务器上的 mvc5 中上传文件时遇到错误
facing error while uploading file in mvc5 on server
我有 MVC5 应用程序,我需要在其中上传文件 excel,然后创建此 excel 的数据 table。我使用devexpress控件上传文件。我使用下面的代码来存储上传的文件,然后读入数据table,然后存储在数据库中。
if (e.UploadedFile.IsValid)
{
e.UploadedFile.SaveAs(System.Web.HttpContext.Current.Server.MapPath("~/App_Data/" + e.UploadedFile.FileName));
var Filepath = System.IO.Path.Combine(System.Web.HttpContext.Current.Server.MapPath("~/App_Data/" + e.UploadedFile.FileName));
DataTable dtReport = new DataTable();
try
{
dtReport = CreateDataTableFromExcelFile(Filepath, "A1:U", true, "Sheet1").Tables[0];
}
catch
{
}
SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
con.Open();
System.Data.SqlClient.SqlBulkCopy sqlcopy = new System.Data.SqlClient.SqlBulkCopy(con);
sqlcopy.DestinationTableName = "table_Name";
sqlcopy.WriteToServer(dtReport);
con.Close();
如果我在我机器上的 IIS 上托管此应用程序,那么它可以正常工作。但如果我将它托管在另一台服务器上,则会显示错误
Access to the path 'C:\inetpub\wwwroot\MVC_Project_v3\App_Data\UploadTemp\dxupload_19aafa62643d42418b2fe5eaadede3cfcugxrc4e.nrt.tmp' is denied.
请提出正确的解决方案
您用于托管网站的凭据(您在应用程序池标识中输入的凭据)没有访问该目录的权限。
在此处添加有效的凭据。
我有 MVC5 应用程序,我需要在其中上传文件 excel,然后创建此 excel 的数据 table。我使用devexpress控件上传文件。我使用下面的代码来存储上传的文件,然后读入数据table,然后存储在数据库中。
if (e.UploadedFile.IsValid)
{
e.UploadedFile.SaveAs(System.Web.HttpContext.Current.Server.MapPath("~/App_Data/" + e.UploadedFile.FileName));
var Filepath = System.IO.Path.Combine(System.Web.HttpContext.Current.Server.MapPath("~/App_Data/" + e.UploadedFile.FileName));
DataTable dtReport = new DataTable();
try
{
dtReport = CreateDataTableFromExcelFile(Filepath, "A1:U", true, "Sheet1").Tables[0];
}
catch
{
}
SqlConnection con = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
con.Open();
System.Data.SqlClient.SqlBulkCopy sqlcopy = new System.Data.SqlClient.SqlBulkCopy(con);
sqlcopy.DestinationTableName = "table_Name";
sqlcopy.WriteToServer(dtReport);
con.Close();
如果我在我机器上的 IIS 上托管此应用程序,那么它可以正常工作。但如果我将它托管在另一台服务器上,则会显示错误
Access to the path 'C:\inetpub\wwwroot\MVC_Project_v3\App_Data\UploadTemp\dxupload_19aafa62643d42418b2fe5eaadede3cfcugxrc4e.nrt.tmp' is denied.
请提出正确的解决方案
您用于托管网站的凭据(您在应用程序池标识中输入的凭据)没有访问该目录的权限。
在此处添加有效的凭据。