OData:从IEdmModel生成$元数据文档

时间:2014-03-26 08:24:56

标签: odata

我可以使用以下内容从$元数据文档生成IEdmModel

HttpWebRequest request = HttpWebRequest.CreateHttp("http://services.odata.org/v3/odata/OData.svc/$metadata");
ClientHttpResponseMessage metadataMessage = new ClientHttpResponseMessage((HttpWebResponse)request.GetResponse());
using (var messageReader = new ODataMessageReader(metadataMessage))
{
    IEdmModel model = messageReader.ReadMetadataDocument();
}

有没有办法反过来?给定IEdmModel生成元数据文档?

1 个答案:

答案 0 :(得分:1)

是的,您可以使用odl writer从IEdmModel中编写元数据。 类ODataMessageWriter具有函数WriteMetadataDocument。假设您有IEdmModel模型,您可以使用以下代码将元数据写入消息。

using (var msgWriter = new ODataMessageWriter((IODataResponseMessage)message, writerSettings, model))
{
  msgWriter.WriteMetadataDocument();
}