summaryrefslogtreecommitdiffstats
path: root/samples/OpenIdProviderWebForms/Default.aspx.cs
diff options
context:
space:
mode:
authorAndrew Arnott <andrewarnott@gmail.com>2013-03-04 15:02:41 -0800
committerAndrew Arnott <andrewarnott@gmail.com>2013-03-04 15:02:41 -0800
commitbbb0214b9f41ad8bcd44eba3714b463eee29fe86 (patch)
tree30787ba8be3b39fce16dc7d32f1e6f6ce177340c /samples/OpenIdProviderWebForms/Default.aspx.cs
parent9c7bd4ad8a4de0147ad93d00813eb4874e031477 (diff)
downloadDotNetOpenAuth-bbb0214b9f41ad8bcd44eba3714b463eee29fe86.zip
DotNetOpenAuth-bbb0214b9f41ad8bcd44eba3714b463eee29fe86.tar.gz
DotNetOpenAuth-bbb0214b9f41ad8bcd44eba3714b463eee29fe86.tar.bz2
Changed all ASP.NET async void event handlers to use RegisterAsyncTask, which avoids bugs in ASP.NET.
Diffstat (limited to 'samples/OpenIdProviderWebForms/Default.aspx.cs')
-rw-r--r--samples/OpenIdProviderWebForms/Default.aspx.cs39
1 files changed, 24 insertions, 15 deletions
diff --git a/samples/OpenIdProviderWebForms/Default.aspx.cs b/samples/OpenIdProviderWebForms/Default.aspx.cs
index 4c572a4..5d27251 100644
--- a/samples/OpenIdProviderWebForms/Default.aspx.cs
+++ b/samples/OpenIdProviderWebForms/Default.aspx.cs
@@ -2,6 +2,7 @@
using System;
using System.Threading.Tasks;
using System.Web.Security;
+ using System.Web.UI;
using System.Web.UI.WebControls;
using DotNetOpenAuth.Messaging;
using DotNetOpenAuth.OpenId;
@@ -12,24 +13,32 @@
/// Page for handling logins to this server.
/// </summary>
public partial class _default : System.Web.UI.Page {
- protected async void Page_Load(object sender, EventArgs e) {
- if (Request.QueryString["rp"] != null) {
- if (Page.User.Identity.IsAuthenticated) {
- await this.SendAssertionAsync(Request.QueryString["rp"]);
- } else {
- FormsAuthentication.RedirectToLoginPage();
- }
- } else {
- TextBox relyingPartySite = (TextBox)this.loginView.FindControl("relyingPartySite");
- if (relyingPartySite != null) {
- relyingPartySite.Focus();
- }
- }
+ protected void Page_Load(object sender, EventArgs e) {
+ this.RegisterAsyncTask(
+ new PageAsyncTask(
+ async ct => {
+ if (Request.QueryString["rp"] != null) {
+ if (Page.User.Identity.IsAuthenticated) {
+ await this.SendAssertionAsync(Request.QueryString["rp"]);
+ } else {
+ FormsAuthentication.RedirectToLoginPage();
+ }
+ } else {
+ TextBox relyingPartySite = (TextBox)this.loginView.FindControl("relyingPartySite");
+ if (relyingPartySite != null) {
+ relyingPartySite.Focus();
+ }
+ }
+ }));
}
protected async void sendAssertionButton_Click(object sender, EventArgs e) {
- TextBox relyingPartySite = (TextBox)this.loginView.FindControl("relyingPartySite");
- await this.SendAssertionAsync(relyingPartySite.Text);
+ this.RegisterAsyncTask(
+ new PageAsyncTask(
+ async ct => {
+ TextBox relyingPartySite = (TextBox)this.loginView.FindControl("relyingPartySite");
+ await this.SendAssertionAsync(relyingPartySite.Text);
+ }));
}
private async Task SendAssertionAsync(string relyingPartyRealm) {