C# 从AsyncFileUpload uploadCompleted事件内部更新网格
我有下面的代码,无法更新UpdatePanel。有什么想法吗?我想知道是否可以从异步方法中进行更新C# 从AsyncFileUpload uploadCompleted事件内部更新网格,c#,asp.net,ajax,file-upload,C#,Asp.net,Ajax,File Upload,我有下面的代码,无法更新UpdatePanel。有什么想法吗?我想知道是否可以从异步方法中进行更新 <asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional"> <ContentTemplate> <asp:DataGrid ID="dgFiles" runat="server" DataKeyField="Conf
<asp:UpdatePanel ID="UpdatePanel2" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:DataGrid ID="dgFiles" runat="server" DataKeyField="ConfigurationFileId" AutoGenerateColumns="false" GridLines="None"
OnItemCommand="dgFiles_ItemCommand" Width="40%">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Label ID="lblFile" runat="server" Text='<%#Eval("SourceFileName") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:LinkButton ID="hypDelete" runat="server" Text="Delete" CssClass="blue" CommandName="Delete" CommandArgument="5"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel3" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<ajaxToolkit:AsyncFileUpload ID="Upload1" runat="server" UploaderStyle="Modern" Width="400px"
Style="visibility: hidden" OnUploadedComplete="Upload1_Complete" OnClientUploadComplete="UploadComplete" />
<asp:DataGrid ID="dgAddFiles" runat="server" DataKeyField="ConfigurationFileId" AutoGenerateColumns="false"
Width="40%" Style="visibility: hidden">
<Columns>
<asp:TemplateColumn>
<ItemTemplate>
<asp:Label ID="lblFile" runat="server" Text='<%#Eval("SourceFileName") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:LinkButton ID="hypDelete" runat="server" Text="Delete" CssClass="blue" CommandName="Delete" CommandArgument="5"></asp:LinkButton>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
</ContentTemplate>
</asp:UpdatePanel>
protected void Upload1_Complete(object sender, AjaxControlToolkit.AsyncFileUploadEventArgs e)
{
if (Upload1.HasFile)
{
Upload1.SaveAs(Server.MapPath("~/files/temp/") + Upload1.FileName);
byte[] data = Upload1.FileBytes;
var file = new Files();
file.FileId = Guid.NewGuid();
file.FileName = Upload1.FileName;
file.Data = data;
using (var ctx = new DeviceManagerEntities())
{
ctx.AddToFiles(file);
ctx.SaveChanges();
var files = ctx.Files
.ToList();
dgAddFiles.DataSource = files;
dgAddFiles.DataBind();
UpdatePanel3.Update();
}
}
}
受保护的无效上载1_完成(对象发送方,AjaxControlToolkit.AsyncFileUploadEventArgs e)
{
if(Upload1.HasFile)
{
Upload1.SaveAs(Server.MapPath(“~/files/temp/”)+Upload1.FileName);
byte[]data=Upload1.FileBytes;
var file=新文件();
file.FileId=Guid.NewGuid();
file.FileName=Upload1.FileName;
file.Data=数据;
使用(var ctx=new devicemanagerenties())
{
ctx.AddToFiles(文件);
ctx.SaveChanges();
var files=ctx.files
.ToList();
dgAddFiles.DataSource=文件;
dgAddFiles.DataBind();
UpdatePanel3.Update();
}
}
}
阅读并查看它是否能解决您的问题: