0

我们已经看到许多与通过 WCF 返回 JSON 数据相关的帖子,但它们都涵盖了将对象转换为 JSON,然后通过属性的魔力返回转换为 JSON 的对象的方面。
我们有许多想要通过 WCF 服务返回的预格式化 JSON 文件。基本上我们需要做的就是读取文件(或文件的缓存副本),然后将数据作为字符串返回。我认为......读取 JSON 文件,将其序列化为对象然后反序列化回 JSON 似乎很浪费。对此有什么帮助吗?

4

1 回答 1

0

使用 WebHttpBinding 时,这就像创建带有 Stream 返回类型的 WebGet 注释方法一样简单:

[WebGet]
public Stream GetFile(Int32 someId)
{
  //your logic to lookup or create the file here.

  //Open the file (a MemoryStream would be acceptible as well if you were creating the data on the fly
  Stream stream = File.OpenRead(yourFilePath);

  //register an event to clean up the temporary file (if necessary)
  OperationContext.Current.OperationCompleted += (s, e) =>
  {
    File.Delete(yourFilePath);
  };

  return stream;

}
于 2013-06-13T23:10:38.913 回答