servicestack,C#,servicestack" /> servicestack,C#,servicestack" />

C# Can-JsonServiceClient';s OnUploadProgress是否与.WithCache()组合?

C# Can-JsonServiceClient';s OnUploadProgress是否与.WithCache()组合?,c#,servicestack,C#,servicestack,在ServiceStack中,您可以创建一个JsonServiceClient并按如下方式侦听上载进度: var client = new JsonServiceClient("http://api.example.org"); client.OnUploadProgress += (done, total) => { }; 但是,将此与缓存结合使用时: var client = new JsonServiceClient("http://api.example.org").WithCa

在ServiceStack中,您可以创建一个JsonServiceClient并按如下方式侦听上载进度:

var client = new JsonServiceClient("http://api.example.org");
client.OnUploadProgress += (done, total) => {
};
但是,将此与缓存结合使用时:

var client = new JsonServiceClient("http://api.example.org").WithCache();
这将不起作用,因为
WithCache()
返回一个
IServiceClient
,它不实现
OnUploadProgress

在使用
WithCache()
时,是否有一种方法可以使用
OnUploadProgress
extension方法返回一个
CachedServiceClient
的新实例,该实例增强了
JsonServiceClient
实例,以围绕GET请求管理本地HTTP缓存层

OnUploadProgress
是一个回调,用于通知文件上载

您只需根据需要配置
JsonServiceClient

var client = new JsonServiceClient("http://api.example.org") {
    OnUploadProgress = (done, total) => ..
};
然后在修改后的实例上创建增强型缓存客户端,例如:

var cacheClient = client.WithCache();

为什么我自己没有想到这一点。谢谢,很好的解释!