Неожиданный атрибут XML при использовании ODataLib v7
Я пытаюсь использовать пример сервиса OData v4 http://services.odata.org/V4/OData/OData.svc/ с новым OData v7. Когда я звоню ODataMessageReader.ReadMetadataDocument
Я получаю UnexpectedXmlAttribute
исключение. Можно ли игнорировать неподдерживаемые атрибуты и элементы?
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using Microsoft.OData;
using Microsoft.OData.Edm;
namespace ConsoleApplication19
{
public class ODataResponseMessage : IODataResponseMessage
{
private readonly Dictionary<string, string> headers;
private WebResponse _response;
public ODataResponseMessage(WebResponse response)
{
this.headers = new Dictionary<string, string>();
_response = response;
}
public IEnumerable<KeyValuePair<string, string>> Headers
{
get
{
return this._response.Headers.AllKeys.Select(headerName => new KeyValuePair<string,
string>(headerName, _response.Headers.Get(headerName)));
}
}
public string GetHeader(string headerName)
{
if (headerName == null)
throw new ArgumentNullException("headerName");
return this._response.Headers.Get(headerName);
}
public int StatusCode { get; set; }
public Uri Url { get; set; }
public string Method { get; set; }
public void SetHeader(string headerName, string headerValue)
{
headers[headerName] = headerValue;
}
public Stream GetStream()
{
return this._response.GetResponseStream();
}
}
class Program
{
static void Main(string[] args)
{
HttpWebRequest request = WebRequest.CreateHttp("http://services.odata.org/V4/OData/OData.svc/$metadata");
ODataResponseMessage metadataMessage = new ODataResponseMessage(request.GetResponse());
ODataMessageReaderSettings readerSettings = new ODataMessageReaderSettings();
readerSettings.MessageQuotas.MaxReceivedMessageSize = int.MaxValue;
readerSettings.Validations = ValidationKinds.None;
IEdmModel model;
using (ODataMessageReader messageReader = new ODataMessageReader(metadataMessage, readerSettings))
{
model = messageReader.ReadMetadataDocument();
}
}
}
}
Исключение, которое я получаю:
Microsoft.OData.ODataException не было обработано HResult=-2146233079
Сообщение = документ метаданных не может быть прочитан из содержимого сообщения. UnexpectedXmlAttribute: Атрибут 'ConcurrencyMode' не ожидался в данном контексте.: (1, 2043)