当服务器端从客户端获取zip数据包时。解压缩此包并将xml数据解析到sql server。然后将成功消息返回给客户端!
但是我遇到了问题。我喜欢在客户端上传成功时将成功消息及时返回给客户端,但是在插入到数据库的数据之后没有!
你能帮我吗?提前说!抱歉我的英文不好!
public IAsyncResult BeginAsyncUpload(string token, Stream data, string fileName, string Org, AsyncCallback callback, object asyncState)
{
if (BaseClass.HasPermission(token))
{
return new CompletedAsyncResult<Stream>(data, fileName,Org);
}
else
{
return null;
}
}
public string EndAsyncUpload(IAsyncResult ar)
{
Stream data = ((CompletedAsyncResult<Stream>)ar).Data;
string fileName = ((CompletedAsyncResult<Stream>)ar).FileName;
string Organization = ((CompletedAsyncResult<Stream>)ar).Org;
try
{
return _streamToFile(data, fileName, Organization);
}
catch
{
return "SUCCESS!";
}
}
_streamToFile方法将数据插入db
答案 0 :(得分:0)
首先,您可以分离数据库插入代码并异步调用该函数。
参考asynch http://msdn.microsoft.com/en-us/magazine/cc164036.aspx
第二种方法是,将文件存储在文件夹A中,创建单独的win服务应用程序以从同一文件夹A中读取文件,提取并插入到sql中。然后移动到文件夹B.