Загружаемые файлы не попадают в нужную папку - PullRequest
0 голосов
/ 29 августа 2011

Я думал, что в пятницу мои загрузки работали корректно, но когда я проверял сайт сегодня утром, он не работает должным образом. Предполагается, что мои загрузки отправляются в файл / файл, а затем в файл, который соответствует ProductID, к которому идет эта загрузка.

Пример: Мой тестовый продукт - ProductID 519. Я хочу загрузить документ, поэтому он должен перейти к uploads / 519. Когда я наводю курсор мыши на загруженный файл, он говорит, что загружает / 519 / PhoneList.xls - что правильно. Но когда я проверяю свой обозреватель решений в Visual Studio 2010, этот файл отображается за пределами файла 519 как 519PhoneList.xls

Может кто-нибудь сказать мне, почему это происходит, и помочь мне разобраться, как это исправить? Я попытался удалить / здесь и там, но я не могу найти правильное место, чтобы исправить.

 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 = Nothing
    Dim MarketingTitle As String = DocumentTitle.Text
    'SQL INSERT: Marketing Table
    sqlFileHREF = "INSERT INTO Marketing (ProductID, MarketingTypeID, MarketingTitle, MarketingData) VALUES (" & ProductID.Value & " ,4, '" & DocumentTitle.Text & "', '" & hostURL & "uploads/" & ProductID.Value & "/" & DocumentUpload.FileName & "')"
    sqlFileHREF.Replace("'", "''")
    DocumentUpload.PostedFile.SaveAs(Server.MapPath("/uploads/" & ProductID.Value & DocumentUpload.PostedFile.FileName))
    '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 


<!-- Add a Document -->
    <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:Label ID="DocumentLabel" runat="server"></asp:Label>
            <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>

Ответы [ 2 ]

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

Существует ли папка 519?

DocumentUpload.PostedFile.SaveAs (Server.MapPath ("/ uploads /" & ProductID.Value & DocumentUpload.PostedFile.FileName))

В этой строке есть ошибка, вам не хватает символа & "/" между productid.value и postsfile.filename.

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

Изменить эту строку:

Server.MapPath("/uploads/" & ProductID.Value & "/" & DocumentUpload.PostedFile.FileName)

Может быть проще с использованием String.Format:

Server.MapPath(String.Format("/uploads/{0}/{1}", ProductId.Value, DocumentUpload.PostedFile.FileName))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...