我的页面上有一些更新面板,它们会执行一些异步后备,以便正确填充一些下拉列表。我的问题是,在我的页面上,我有一个处理一些文件上传的HTML输入。使用asyncpostbacks页面上的AJAX,当我逐步执行我的代码时,文件不会被上传。由于我的布局,无法使用postbacktrigger(非异步)。
这是我的代码:
<div id="divFileInputs" runat="server">
<input id="file1" name="fileInput" type="file" runat="server" size="50" style="width: 50em"
onfocus="AddFileInput()" class="textbox" /></div>
<select id="selectFileList" name="ListBox1" size="5" style="width: 50em; text-align: left;"
class="textbox" />
<input id="RemoveAttachmentButton" type="button" value="Remove" onclick="RemoveFileInput()"
class="removebutton " />
</div>
这是我背后的代码:
Protected Sub CopyAttachments(ByVal issueId As String)
Dim files As HttpFileCollection = Request.Files
Dim myStream As System.IO.Stream
Dim service As New SubmitService.Service
For i As Integer = 0 To files.Count - 1
Dim postedFile As HttpPostedFile = files(i)
Dim fileNameWithoutPath As String = System.IO.Path.GetFileName(postedFile.FileName)
If fileNameWithoutPath.Length > 0 And issueId.Length > 0 Then
Dim fileLength As Integer = postedFile.ContentLength
Dim fileContents(fileLength) As Byte
' Read the file into the byte array. Send it to the web service.
myStream = postedFile.InputStream
myStream.Read(fileContents, 0, fileLength)
service.ClearQuestAttachToIssue(issueId, fileNameWithoutPath, fileContents)
End If
Next
service = Nothing
End Sub
当我在服务声明中放入一个断点然后检查“files”的值时,计数为0.当我上传一个文件时,我希望它是2。
任何人都知道如何解决这个问题?
答案 0 :(得分:0)
好的,这是解决方案。我使用的提交按钮附加到AJAX asncypostback。因此不回发整个页面。我把它改成了一个回发更新面板和bingo..works!