【问题标题】:The SaveAs method is configured to require a rooted path, and the path '~/Images/FleaMarket/uploadedImages/mitali2054/5.jpg' is not rootedSaveAs 方法配置为需要有根路径,并且路径 '~/Images/FleaMarket/uploadedImages/mitali2054/5.jpg' 没有根路径
【发布时间】:2011-12-13 10:56:36
【问题描述】:
Private Function UploadPic() As String

        Const bmpw As Integer = 300
        Const bmph As Integer = 300
        Dim itemID As String = MaxItemNo()

        Dim filePath As String = "~/Images/FleaMarket/uploadedImages/" & User.Identity.Name.ToString & "/" & itemID & Path.GetExtension(fuImage.FileName)
        MsgBox(filePath)
        If fuImage.HasFile Then
            'lblMessage.Text = ""
            If checkFileType(fuImage.FileName) Then
                **fuImage.PostedFile.SaveAs(filePath)**
                Dim newWidth As Integer = bmpw
                Dim newHeight As Integer = bmph
                Dim upBmp As Bitmap = Bitmap.FromStream(fuImage.PostedFile.InputStream)
                Dim newBmp As Bitmap = New Bitmap(newWidth, newHeight, Imaging.PixelFormat.Format24bppRgb)
                newBmp.SetResolution(72, 72)
                Dim upWidth As Integer = upBmp.Width
                Dim upHeight As Integer = upBmp.Height
                Dim newX As Integer = 0
                Dim newY As Integer = 0
                Dim reduce As Decimal

                If upWidth > upHeight Then
                    reduce = newWidth / upWidth
                    newHeight = Int(upHeight * reduce)
                    newY = Int((bmph - newHeight) / 2)
                    newX = 0
                ElseIf upWidth < upHeight Then
                    reduce = newHeight / upHeight
                    newWidth = Int(upWidth * reduce)
                    newX = Int((bmpw - newWidth) / 2)
                    newY = 0
                ElseIf upWidth = upHeight Then
                    reduce = newHeight / upHeight
                    newWidth = Int(upWidth * reduce)
                    newX = Int((bmpw - newWidth) / 2)
                    newY = Int((bmph - newHeight) / 2)
                End If

                Dim newGraphic As Graphics = Graphics.FromImage(newBmp)
                Try
                    newGraphic.Clear(Color.White)
                    newGraphic.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias
                    newGraphic.InterpolationMode = Drawing2D.InterpolationMode.HighQualityBicubic
                    newGraphic.DrawImage(upBmp, newX, newY, newWidth, newHeight)
                    newBmp.Save(MapPath(filePath), Imaging.ImageFormat.Png)
                    'Image1.ImageUrl = filePath
                    'Image1.Visible = True
                Catch ex As Exception
                    'lblMessage.Text = ex.ToString
                Finally
                    upBmp.Dispose()
                    newBmp.Dispose()
                    newGraphic.Dispose()
                End Try

            Else
                lblMessage.Text = "Please select bmp, jpg, jpeg, gif or png as file format!"
            End If
        End If
        Return filePath
    End Function

这是我用来上传图片的代码 ....但我收到错误 " SaveAs 方法配置为需要根路径,并且路径 '~/Images/FleaMarket/uploadedImages/ mitali2054/5.jpg' 没有root。”

【问题讨论】:

    标签: c# asp.net vb.net


    【解决方案1】:

    Server.MapPath 应配置为在服务器端写入磁盘:

    基本用法:

    String FilePath = Server.MapPath("/App_Data");
    

    配置:可以参考这两个Q&A

    Server.MapPath("."), Server.MapPath("~"), Server.MapPath(@"\"), Server.MapPath("/"). What is the difference?

    The SaveAs method is configured to require a rooted path, and the path 'fp' is not rooted

    【讨论】:

    • fuImage.PostedFile.SaveAs(Server.MapPath("/Images/FleaMarket/uploadedImages/" &amp; User.Identity.Name.ToString &amp; "/" &amp; itemID &amp; Path.GetExtension(fuImage.FileName))) 我现在正在使用此代码,但它显示 " 无法映射路径 '/Images/FleaMarket/uploadedImages/mitali2054/5.JPG'。" 是是因为文件夹不存在吗?我希望它们动态创建...
    • 我只有Images 文件夹并希望动态创建其他文件夹...我该怎么做??
    猜你喜欢
    • 2010-11-23
    • 2023-03-24
    • 2010-11-15
    • 1970-01-01
    • 1970-01-01
    • 2018-07-11
    • 2014-09-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多