我继承了一个 WCF 服务,它充当文件缓存(每个文件代表对第三方 API 的请求的结果)。目前,如果文件不存在,则代码会创建一个新请求来创建数据,并且还会向客户端代码引发异常。
我认为这个想法是客户会回来再次请求文件,然后他们就可以使用它(生成文件需要几秒钟)。
我认为这里有代码味道,我应该重写这部分。目前,异常正在通过几种方法被捕获并冒泡。我认为我应该从源头确定文件是否存在并将该信息传递到调用堆栈。
在 WCF 界面,我目前有一个GetValue()
方法,尽管我认为可以使用两个选项来替换它:
null
如果文件不存在则返回。- 使用
bool TryGetValue(string key, out string value)
方法
有没有人有任何偏好/建议?
谢谢