Событие Simple.OData BeforeRequest не вызвано
Я использую адаптер Simple.OData, чтобы попытаться подключиться к службе OData. Служба требует проверки подлинности для подключения. Я зарегистрировал событие BeforeRequest для установки необходимых заголовков перед выполнением любого запроса.
Тем не менее, мой BeforeRequest вообще не запускается, что приводит к невозможности открыть контекст, из-за слишком отсутствующих учетных данных, и мой код зависает и ждет вечно.
Смотрите мой код ниже, я что-то упустил?
public void GetData()
{
var oDataFeed = new ODataFeed(ApiBaseUrl);
oDataFeed.BeforeRequest += BeforeRequest;
oDataFeed.AfterResponse += AfterResponse;
Context = Database.Opener.Open(ApiBaseUrl);
// do some more
}
private void BeforeRequest(HttpRequestMessage httpRequestMessage)
{
// add headers.
}
Казалось, что оно сработало или активировало событие один раз, однако после перестройки проекта оно больше не работает.
1 ответ
В Simple.Data.Client 3x есть известная ошибка, которая влияет на перехват запросов в определенных сценариях. Ошибка исправлена в следующей версии 4 Simple.OData.Client, которая в настоящее время доступна в виде предварительной версии, но она очень стабильна и поставляется с множеством новых функций, включая поддержку полезной нагрузки JSON и протокола OData V4.