Куда идут мои загрузки? - PullRequest
       9

Куда идут мои загрузки?

1 голос
/ 25 августа 2011

У меня есть несколько ModalPopUpExtenders на моем сайте, где администраторы могут загружать видео, документы, изображения и изображения в конкретный продукт. Кажется, что загрузка работает нормально, она отображается в базе данных и на сайте ..... но когда я нажимаю на ссылку на странице, она говорит: «Возможно, искомый ресурс удален, изменилось его имя. или временно недоступно. "

Ничто не загружается в фактическую папку загрузки, которая является частью моего сайта ASP.net 4.0 VB. Может кто-нибудь сказать мне, что происходит?

<li>
    <asp:LinkButton ID="DocumentButton" runat="server">Document</asp:LinkButton>
    <asp:Panel ID="DocumentPanel" runat="server" CssClass="modalPopup" Style="display:none">
       Title:<asp:TextBox ID="DocumentTitle" runat="server"></asp:TextBox>
       <asp:FileUpload ID="DocumentUpload" runat="server" />
                <asp:Button ID="SubmitDocument" runat="server" Text="Upload" onclick="SubmitDocument_Click" /><asp:Button ID="CancelDocument" runat="server" Text="Cancel" /><asp:HiddenField ID="filename" runat="server" />
            </asp:Panel>       
            <asp:ModalPopupExtender ID="DocumentModal" runat="server" DropShadow="True" DynamicServicePath="" Enabled="True" PopupControlID="DocumentPanel" TargetControlID="DocumentButton"></asp:ModalPopupExtender>
</li>    

    Protected Sub SubmitDocument_Click(ByVal sender As Object, ByVal e As EventArgs) Handles SubmitDocument.Click
    DocumentModal.Hide()
    'Builds the full absolute URL to be inserted into the database. 
    Dim hostURL As String = Request.Url.Scheme & "://" & Request.Url.Host & ":" & Request.Url.Port & Request.ApplicationPath
    Dim sqlFileHREF As String = "INSERT INTO Marketing (ProductID, MarketingTypeID, MarketingTitle, MarketingData) VALUES (" & ProductID.Value & " ,4, '" & DocumentTitle.Text & "', '" & hostURL & "uploads/" & ProductID.Value & "/" & DocumentUpload.FileName & "')"
    sqlFileHREF.Replace("'", "''")
    If DocumentUpload.HasFile Then
        Try
            DocumentUpload.SaveAs("uploads" & _
               DocumentUpload.FileName)
            DocumentLabel.Text = "File name: " & _
               DocumentUpload.PostedFile.FileName & "<br>" & _
               "File Size: " & _
               DocumentUpload.PostedFile.ContentLength & " kb<br>" & _
               "Content type: " & _
               DocumentUpload.PostedFile.ContentType
        Catch ex As Exception
            DocumentLabel.Text = "ERROR: " & ex.Message.ToString()
        End Try
    Else
        DocumentLabel.Text = "You have not specified a file."
    End If

    'Create SQL Connection
    Dim SqlConnection As New SqlConnection("Server=off-db1;uid=productsDB_admin;pwd=******;database=Products")
    SqlConnection.Open()
    Dim sqlCommand As New SqlCommand(sqlFileHREF, SqlConnection)
    sqlCommand.ExecuteNonQuery()
    SqlConnection.Close()
    Response.Redirect(Request.RawUrl)
End Sub

Ответы [ 3 ]

2 голосов
/ 25 августа 2011

Необходимо указать, куда сохранить файл:

DocumentUpload.PostedFile.SaveAs(Server.MapPath("/path/" & DocumentUpload.PostedFile.FileName))

Где Server.MapPath сопоставит виртуальный путь с физическим путем, что и требуется .SaveAs.

1 голос
/ 25 августа 2011

Вы не сказали серверу, где сохранить файл. Посмотрите пошаговое руководство по MSDN для конкретных примеров кода: http://msdn.microsoft.com/en-us/library/aa479405.aspx.

0 голосов
/ 25 августа 2011

Если путь не указан, они, вероятно, находятся в C: \ Windows \ System32.

...