Routing with ASP.Net Web Forms

Routing with ASP.Net Web Forms

تغيير العناوين الروابط ب asp.net web forms مثلا عندنا صفحة aspx داخل فولدر اسمه test رابط هذه الصفحة سيكون http://loacalhost/test/about.aspx ونحن نريد ان يكون بالشكل التالي http://loacalhost/ِabout لتسهيل التعامل مع الروابط او اخفاء تفاصيل الملفات اوغيرها

نحتاج لاضافة class بالاسم RouteConfig.cs طبعا اذا انت تستخدم القالب الجاهز من الفيجول استديو هذه الملفات اتكون موجودة فقط اتغيير عليها اما اذا بادي المشروع من قالب فارغ فتضيفها كما في الصورة

ملف global وهو الملف الذي يحوي على مانحتاج استدعائه عند بدء عمل الموقع وقبل تحميل اي صفحة وفي داخل نستدعي RouteConfig بالبداية نشاهد محتوى Global.asax

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Optimization;
using System.Web.Routing;
using System.Web.Security;
using System.Web.SessionState;
//غير النيم سبيس حسب اسم المشروع الخاص بك
namespace RouteAspWebForms
{
public class Global : HttpApplication
{
void Application_Start(object sender, EventArgs e)
{
// Code that runs on application startup
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
}
}

الملف الثاني RouteConfig.cs ويحوي الكود بالاسفل لكن الاهم هو السطر حيث ان الدالة MapPageRoute تاخذ ثلاث قيم نصية الاول هو الاسم البرمجي للرابط والثاني هو الرابط الجديد الذي سيهر بالمتصفح والثالث هو مسار الملف الحقيقي

routes.MapPageRoute(“About”, “About”, “~/test/About.aspx”);

الكود كامل هنا

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.Routing;
using Microsoft.AspNet.FriendlyUrls;
//غير النيم سبيس حسب اسم المشروع الخاص بك

namespace RouteAspWebForms
{
public static class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings);
//هنا يتم تحويل الروابط
routes.MapPageRoute(“About”, “About”, “~/test/About.aspx”); }}}

والنتيجة بعد التشغيل حتى بالشكل التالي

وهذا مقال للاستزادة

https://laptrinhx.com/url-rooting-in-asp-net-web-forms-3468105784/

اترك تعليقاً