我开发了一个应用程序,我将上传PDF文件并将其绑定到Gridview。我可以上传较小尺寸的文件,例如高达3.5MB,之后我无法上传PDF文件,因为我收到错误消息,例如"服务器错误' / STAT'应用。运行时错误"或"页面无法显示(在本地系统中测试时)"
使用的技术: vs 2005 .net 2.0,它是Web应用程序。
我已粘贴下面的代码:
Protected Sub btnUploadSTPI_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnUploadSTPI.Click
Try
If txtStpiRegNo.Text <> "" Then
If txtfilepathSTPI.Value <> "" Then
Dim objDS As DataSet
Dim UploadFile, UploadPath, strFile, sUploadPath, sUploadfilename As String
Dim arr As Array
UploadFile = txtfilepathSTPI.Value
UploadPath = UploadFile.LastIndexOf("\") + 1
strFile = UploadFile.Substring(UploadPath)
sUploadPath = System.Configuration.ConfigurationSettings.AppSettings("UploadTempFile").ToString()
arr = strFile.Split(".")
strFile = CType(arr(0).ToString() + "_" + txtStpiRegNo.Text + "_" + System.DateTime.Now.Second.ToString() + "." + arr(1).ToString, String)
sUploadfilename = sUploadPath + strFile
txtfilepathSTPI.PostedFile.SaveAs(sUploadfilename)
objDS = Session("TempDS")
If objDS.Tables.Count > 1 Then
Dim objRow As DataRow
objRow = objDS.Tables(1).NewRow()
objRow.Item("UploadFileName") = arr(0).ToString()
objRow.Item("UploadFilePath") = strFile
objRow.Item("CompanyID") = ddlCompany.SelectedValue
objRow.Item("CompanyDocuments") = "STPI REG NO - " + txtStpiRegNo.Text
objDS.Tables(1).Rows.InsertAt(objRow, objDS.Tables(1).Rows.Count + 1)
dgCompanyFiles.DataSource = objDS.Tables(1)
dgCompanyFiles.DataBind()
Session("TempDS") = objDS
End If
Else
lblError.Text = "Please select a file to upload."
End If
Else
lblError.Text = "Please enter STPI REG No."
End If
Catch ex As Exception
End Try
End Sub
即使我尝试跟踪应用程序,在浏览文件并单击“上传”按钮以获得更大的文件大小超过3.5MB之后,它也没有进入特定的按钮事件。
错误讯息:
Server Error in '/STAT' Application.
运行时错误 说明:服务器上发生应用程序错误。此应用程序的当前自定义错误设置可防止远程查看应用程序错误的详细信息(出于安全原因)。但是,它可以由运行在本地服务器计算机上的浏览器查看。
详细信息:要在远程计算机上查看此特定错误消息的详细信息,请在&#34; web.config&#34;中创建标记。配置文件位于当前Web应用程序的根目录中。然后该标签应该具有&#34;模式&#34;属性设置为&#34;关&#34;。
答案 0 :(得分:0)
首先,您需要编辑web.config以启用查看错误。执行此操作的方法显示在报告的错误本身中。
其次,您需要允许更大的上传文件大小:
<configuration>
<system.web>
<httpRuntime maxRequestLength="xxx" />
</system.web>
</configuration>