【发布时间】:2021-10-24 14:45:06
【问题描述】:
我创建了一个使用 WCF 服务的 Web 应用,
当我构建我的项目并运行时,我的 WCF 服务中的方法仅第一次执行了 2 次,但之后它可以正常工作,
这是我的代码,
FileInfo fi = new FileInfo(destFileName);
FileServer.ServiceClient fs = new FileServer.ServiceClient();
FileServer.RemoteFileInfo uploadRequestInfo = new FileServer.RemoteFileInfo();
using (System.IO.FileStream stream = new System.IO.FileStream(fi.FullName, System.IO.FileMode.Open, System.IO.FileAccess.Read))
{
uploadRequestInfo.FileServerId = item.FileServerId;
uploadRequestInfo.FileName = item.FileName;
uploadRequestInfo.FileExtension = item.FileExtension;
uploadRequestInfo.Length = fi.Length;
uploadRequestInfo.FileByteStream = stream;
fs.UploadFileStream(uploadRequestInfo.FileExtension, uploadRequestInfo.FileName, uploadRequestInfo.FileServerId, uploadRequestInfo.Length, stream);
}
我的 reference.cs 类
[System.ComponentModel.EditorBrowsableAttribute(System.ComponentModel.EditorBrowsableState.Advanced)]
DocPro.DMS.WebApp.FileServer.UploadFileStreamResponse DocPro.DMS.WebApp.FileServer.IService.UploadFileStream(DocPro.DMS.WebApp.FileServer.RemoteFileInfo request) {
return base.Channel.UploadFileStream(request);
}
public void UploadFileStream(string FileExtension, string FileName, string FileServerId, long Length, System.IO.Stream FileByteStream) {
DocPro.DMS.WebApp.FileServer.RemoteFileInfo inValue = new DocPro.DMS.WebApp.FileServer.RemoteFileInfo();
inValue.FileExtension = FileExtension;
inValue.FileName = FileName;
inValue.FileServerId = FileServerId;
inValue.Length = Length;
inValue.FileByteStream = FileByteStream;
DocPro.DMS.WebApp.FileServer.UploadFileStreamResponse retVal = ((DocPro.DMS.WebApp.FileServer.IService)(this)).UploadFileStream(inValue);
}
我在项目中使用了 WCF 服务引用,
我的代码有什么问题吗,我在 stackoverflow 上看到了多个关于此的问题,但没有找到任何解决方案,
这是我看到的几篇文章,
WCF Completed Event is getting called multiple times
【问题讨论】:
-
他们的解决方案对您不起作用,因为您的情况不同。您可以查看任何日志或错误消息吗?
-
@Jiayao 不,我没有得到任何日志