Un exemple simple de la façon d'utiliser le routage dans ASP.NET
- Créer vide Application Web
- Ajouter première forme - Default.aspx
- Ajouter deuxième forme - Second.aspx
- Ajouter une troisième forme - Third.aspx
Ajouter la valeur par défaut.ASPX 3 boutons -
protected void Button1_Click(object sender, EventArgs e)
{
Response.Redirect("Second.aspx");
}
protected void Button2_Click(object sender, EventArgs e)
{
Response.Redirect("Third.aspx?Name=Pants");
}
protected void Button3_Click(object sender, EventArgs e)
{
Response.Redirect("Third.aspx?Name=Shoes");
}
Lire la chaîne de requête sur troisième page
protected void Page_Load(object sender, EventArgs e)
{
Response.Write(Request.QueryString["Name"]);
}
Maintenant, si vous exécutez le programme, vous serez en mesure de naviguer à la forme deuxième et troisième. Voici comment c'était. Ajoutons un routage.
Ajouter un nouvel élément - Global.aspx en utilisant System.Web.Routing;
protected void Application_Start(object sender, EventArgs e)
{
RegisterRoutes(RouteTable.Routes);
}
void RegisterRoutes(RouteCollection routes)
{
routes.MapPageRoute(
"HomeRoute",
"Home",
"~/Default.aspx"
);
routes.MapPageRoute(
"SecondRoute",
"Second",
"~/Second.aspx"
);
routes.MapPageRoute(
"ThirdRoute",
"Third/{Name}",
"~/Third.aspx"
);
}
Dans default.aspx modifier Button1_Click vide protégé (expéditeur d'objet, EventArgs e) { // Response.Redirect ("Second.aspx"); Response.Redirect (GetRouteUrl ("SecondRoute", null)); }
protected void Button2_Click(object sender, EventArgs e)
{
//Response.Redirect("Third.aspx?Name=Pants");
Response.Redirect(GetRouteUrl("ThirdRoute", new {Name = "Pants"}));
}
protected void Button3_Click(object sender, EventArgs e)
{
// Response.Redirect("Third.aspx?Name=Shoes");
Response.Redirect(GetRouteUrl("ThirdRoute", new { Name = "Shoes" }));
}
Modifier chargement de la page dans third.aspx
protected void Page_Load(object sender, EventArgs e)
{
//Response.Write(Request.QueryString["Name"]);
Response.Write(RouteData.Values["Name"]);
}
Exécutez le programme, S'il vous plaît noter que l'URL ressemble beaucoup plus propre - il y a pas d'extensions fichier dans ce (Second.aspx devient simplement Second)
Pour passer plus d'un argument
bouton Ajouter nouveau pour default.aspx avec le code suivant:
protected void Button4_Click(object sender, EventArgs e)
{
Response.Redirect(GetRouteUrl("FourthRoute", new { Name = "Shoes" , Gender = "Male"}));
}
ajoutez le code suivant à Global.asax
routes.MapPageRoute(
"FourthRoute",
"Fourth/{Name}-{Gender}",
"~/Fourth.aspx"
);
Créer une page Fourth.aspx avec les éléments suivants chargement de la page:
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("Name is: " + RouteData.Values["Name"] + " and Gender is " + RouteData.Values["Gender"]);
}
s'il vous plaît le tag url-routing à votre message – Armstrongest