fix links in ASP.NET legacy branch (#4676)

pull/4680/head
Rick Anderson 2017-10-30 13:10:33 -10:00 committed by GitHub
parent 41d50990d9
commit cd0f36ce9f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 3 additions and 3 deletions

View File

@ -107,7 +107,7 @@ The following code shows the `Gizmos` synchronous method and the `GizmosAsync` a
Inside of the `GetGizmosAsync` method body another asynchronous method, `GetGizmosAsync` is called. `GetGizmosAsync` immediately returns a `Task<List<Gizmo>>` that will eventually complete when the data is available. Because you don't want to do anything else until you have the gizmo data, the code awaits the task (using the **await** keyword). You can use the **await** keyword only in methods annotated with the **async** keyword.
The **await** keyword does not block the thread until the task is complete. It signs up the rest of the method as a callback on the task, and immediately returns. When the awaited task eventually completes, it will invoke that callback and thus resume the execution of the method right where it left off. For more information on using the [await](https://msdn.microsoft.com/en-us/library/hh156528(VS.110).aspx) and [async](https://msdn.microsoft.com/en-us/library/hh156513(VS.110).aspx) keywords and the [Task](https://msdn.microsoft.com/en-us/library/system.threading.tasks.task.aspx) namespace, see the [async references](#asyncRefs) section.
The **await** keyword does not block the thread until the task is complete. It signs up the rest of the method as a callback on the task, and immediately returns. When the awaited task eventually completes, it will invoke that callback and thus resume the execution of the method right where it left off. For more information on using the [await](https://msdn.microsoft.com/en-us/library/hh156528(VS.110).aspx) and [async](https://msdn.microsoft.com/en-us/library/hh156513(VS.110).aspx) keywords and the [Task](https://msdn.microsoft.com/en-us/library/system.threading.tasks.task.aspx) namespace, see the [async references](https://docs.microsoft.com/dotnet/csharp/language-reference/keywords/async).
The following code shows the `GetGizmos` and `GetGizmosAsync` methods.

View File

@ -26,7 +26,7 @@ by [Scott Mitchell](https://twitter.com/ScottOnWriting)
In the <a id="_msoanchor_1"></a>[preceding tutorial](creating-the-membership-schema-in-sql-server-cs.md) we installed the application services schema in a database, which added the tables, views, and stored procedures needed by the `SqlMembershipProvider` and `SqlRoleProvider`. This created the infrastructure we will need for the remainder of the tutorials in this series. In this tutorial we will explore using the Membership framework (via the `SqlMembershipProvider`) to create new user accounts. We will see how to create new users programmatically and through ASP.NET's built-in CreateUserWizard control.
In addition to learning how to create new user accounts, we will also need to update the demo website we first created in the *<a id="_msoanchor_2"></a>[An Overview of Forms Authentication](../introduction/an-overview-of-forms-authentication-cs.md)* tutorial and then enhanced in the *<a id="https://www.asp.net/learn/security/tutorial-03-cs.aspx"></a>[Forms Authentication Configuration and Advanced Topics](#_msocom_3)* tutorial. Our demo web application has a login page that validates users' credentials against hard-coded username/password pairs. Moreover, `Global.asax` includes code that creates custom `IPrincipal` and `IIdentity` objects for authenticated users. We will update the login page to validate users' credentials against the Membership framework and remove the custom principal and identity logic.
In addition to learning how to create new user accounts, we will also need to update the demo website we first created in the *<a id="_msoanchor_2"></a>[An Overview of Forms Authentication](../introduction/an-overview-of-forms-authentication-cs.md)* tutorial and then enhanced in the *<a id="https://www.asp.net/learn/security/tutorial-03-cs.aspx"></a> Forms Authentication Configuration and Advanced Topics* tutorial. Our demo web application has a login page that validates users' credentials against hard-coded username/password pairs. Moreover, `Global.asax` includes code that creates custom `IPrincipal` and `IIdentity` objects for authenticated users. We will update the login page to validate users' credentials against the Membership framework and remove the custom principal and identity logic.
Let's get started!

View File

@ -124,7 +124,7 @@ The asynchronous version:
Inside of the `GetGizmosSvcAsync` method body another asynchronous method, `GetGizmosAsync` is called. `GetGizmosAsync` immediately returns a `Task<List<Gizmo>>` that will eventually complete when the data is available. Because you don't want to do anything else until you have the gizmo data, the code awaits the task (using the **await** keyword). You can use the **await** keyword only in methods annotated with the **async** keyword.
The **await** keyword does not block the thread until the task is complete. It signs up the rest of the method as a callback on the task, and immediately returns. When the awaited task eventually completes, it will invoke that callback and thus resume the execution of the method right where it left off. For more information on using the [await](https://msdn.microsoft.com/en-us/library/hh156528(VS.110).aspx) and [async](https://msdn.microsoft.com/en-us/library/hh156513(VS.110).aspx) keywords and the [Task](https://msdn.microsoft.com/en-us/library/system.threading.tasks.task.aspx) namespace, see the [async references](#asyncRefs) section.
The **await** keyword does not block the thread until the task is complete. It signs up the rest of the method as a callback on the task, and immediately returns. When the awaited task eventually completes, it will invoke that callback and thus resume the execution of the method right where it left off. For more information on using the [await](https://msdn.microsoft.com/en-us/library/hh156528(VS.110).aspx) and [async](https://msdn.microsoft.com/en-us/library/hh156513(VS.110).aspx) keywords and the [Task](https://msdn.microsoft.com/en-us/library/system.threading.tasks.task.aspx) namespace, see the [async references](https://docs.microsoft.com/dotnet/csharp/language-reference/keywords/async).
The following code shows the `GetGizmos` and `GetGizmosAsync` methods.