Как получить событие DotNetOpenID Ajax TextBox LoggingIn для запуска? - PullRequest
0 голосов
/ 08 апреля 2011

Я использую текстовое поле Ajax DotNetOpenID. Я пытаюсь получить событие LoggingIn для запуска следующего кода.

protected void LoggingIn(object sender, OpenIdEventArgs e) 
{
    e.Request.AddExtension(new ClaimsRequest {
        Email = DemandLevel.Request,
    });
}

Вот элемент управления, который я использую.

<RP:OpenIdAjaxTextBox ID="OpenIdAjaxTextBox" runat="server" OnLoggedIn="LogIn" OnLoggingIn="LoggingIn" OnUnconfirmedPositiveAssertion="UnconfirmedPositiveAssertion" OnClientAssertionReceived="onauthenticated(sender)" />

Когда должно произойти это событие? Может ли кто-нибудь разобраться в моем замешательстве, чтобы я мог правильно запустить ClaimsRequest?

Мне показалось, что все остальное работает нормально, за исключением ClaimsRequest, потому что sreg всегда нулевой. Я следовал инструкциям на следующей странице.

http://www.dotnetopenauth.net/developers/code-snippets/openid-relying-party-using-asp-net-controls/

Кажется, на приведенной выше странице может быть ошибка. В нем сказано добавить следующую строку к вашей собственной кнопке входа в систему.

OpenIdTextBox1.LogOn();

Однако, нет функции LogOn, которую я могу найти в элементе управления. Это должно быть LoggingIn () или LogIn ()?

1 Ответ

1 голос
/ 09 апреля 2011

Похоже, вы правильно подключили.Какие у вас есть доказательства того, что ваше LoggingIn событие не вызывается?Вы установили контрольные точки, чтобы проверить это?Если ваш ClaimsResponse всегда равен нулю, это может свидетельствовать о том, что провайдер OpenID, с которым вы тестируете, игнорирует ваш запрос ClaimsRequest.Например, если вы проводите тестирование на Google, вы должны пометить адрес электронной почты как Обязательный, а не Запрошенный, и применить AXFetchAsSregTransform .

Инструкции на странице, на которую вы ссылаетесь, которая говоритдобавить строку OpenIdTextBox1.LogOn ();к вашему выделенному коду относится только элемент управления OpenIdTextBox, а не элемент управления OpenIdAjaxTextBox, который вы используете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...