如何从OData服务中检索图像?

时间:2013-03-01 14:07:58

标签: c# odata

我有一个OData服务(如果你必须知道,它的System Center Orchestrator的web服务),如果我查询,它会返回一个BMP图像

http://localhost.com/Orchestrator2012/Orchestrator.svc/RunbookDiagrams(guid '882f767d-63Bd上-437c-b0c7-4051aac56176')/ $值

所以它基本上说,给我带有Id 882f767d-63bd-437c-b0c7-4051aac56176的RunbookDiagram

它在IE中正确呈现。但是当我从C#查询它时,我无法获取图像数据,但我确实获得了所有其他数据字段。

现在webservice的文档说我需要使用$ value来返回查询。但是如何在C#

的以下OData查询中使用$ value
RunbookDiagram rbkdiag=orch.RunbookDiagrams.Where(
                                                  m => m.RunbookId ==runbookId
                                                 ).SingleOrDefault();

1 个答案:

答案 0 :(得分:1)

也许该服务将图像作为媒体链接条目返回? 您可以通过查看从服务器返回的xml来查看这个,并查找m:HasStream =“true”

如果是这种情况,请在上下文中使用GetReadStream

查看this astoriateam博客文章了解详情。