日期:2014-05-18  浏览次数:20450 次

asp.net 如何用input type=file 上传图片?
<input size=10 type=File name=cPub"+allCount+">

怎样获取file的路径上传到数据库?

因为是用javascript动态新增行的,所以只能用file 不能用asp.net中的控件fileupload。





------解决方案--------------------
''' <summary>
''' 保存文件集合
''' </summary>
''' <param name="Folder">基础文件夹名称</param>
''' <param name="AddAppUrl">加上应用程序目录</param>
''' <remarks>
''' 
''' </remarks>
Public Function SaveFiles(ByVal Folder As String, Optional ByVal AddAppUrl As Boolean = True) As String
Try
If AddAppUrl Then Folder = GetAppPath() & Folder
If My.Computer.FileSystem.DirectoryExists(Folder) = False Then
My.Computer.FileSystem.CreateDirectory(Folder)
End If
Dim Files As System.Web.HttpFileCollection = Me.GetFiles
Dim postedFile As System.Web.HttpPostedFile
Dim FilePath As String, II As Integer
Dim FileList As String = ""
For II = 0 To Files.Count - 1
postedFile = Files(II)
If postedFile.FileName <> "" Then
FilePath = GetFileName(GetLine(Folder) & System.IO.Path.GetFileName(postedFile.FileName))
postedFile.SaveAs(FilePath)
FileList = FileList & System.IO.Path.GetFileName(FilePath) & ","
End If
Next
Return FileList
Catch ex As Exception
Throw New System.Exception(ex.Message)
End Try
End Function
------解决方案--------------------
老兄,这个已经是老生常谈了:
1.如果你页面中没有服务端upload控件,请在Page_Load中注册form的enctype(如果有服务端upload控件,会自动注册的)
protected void Page_Load(object sender, EventArgs e)
{
this.form1.Enctype = "multipart/form-data";
}
2.上传文件的代码
protected void Button1_Click(object sender, EventArgs e)
{
//核心是使用Request.Files方法
for (int i = 0; i < Request.Files.Count; i++)
{
Request.Files[i].SaveAs(Server.MapPath("***"));
}
}