الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تمرير البرامترات من صفحة لأخري

مغلق
بدأه DotNetExpert في 6 فبراير 2005 · 8 رد · 7,023 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

كثيرا ما يطرح سؤال كيف يتم ترمير البرامترات من صفحة لأخرى.

اليوم وبالصدفة وجدت مقالة عن هذا الموضوع في الموقع الاكثر من رائع www.4GuysFromRolla.com

كاتيا الموضوع يفدمان فيه صفا يساعدة على تمرير البرامترات بين الصفحات بطريقة غرضية التوجه.

http://aspnet.4guysfromrolla.com/articles/020205-1.aspx

وحدن بيبقو متل زهر البيلسان وحدهن بيقطفو وراق الزمان

بيسكرو الغابي بيضلهن متل الشتي يدقوا على بوابي على بوابي

يا زمان يا عشب داشر فوق هالحيطان ضويت ورد الليل عكتابي

برج الحمام مسور و عالي هج الحمام بقيت لحالي لحالي

يا ناطرين التلج ما عاد بدكن ترجعو صرخ عليهن بالشتي يا ديب بلكي بيسمعو

http://www.mazikana.com/Songs/F/Fayrouz/mp...uz---Wahdon.mp3

#2

أيضا هناك طريقة ثانية وسهلة جدا شبيهة بطريقة ال Classic ASP و هي بحذف الخاصية runat من الوسم Form و تحديد الخصائص Method و Action كالتالي :

<form id="myForm" Action="secondPage.aspx" Method="Get">

..........
</form>

من خلال هذه الطريقة سوف تعتمد فقط على ال HTMLControls و تستطيع إستقبال القيم إما عن طريق Request.QueryString كما في المثال السابق أو عن طريق Request.Form لو كانت الخاصية Method من نوع Post.

You can fly while you can touch the sky

#3

بسم الله الرحمن الرحيم

إضافة علي كلام الأستاذ DotNetExpert والأستاذ محمد خليل أبو صلاح

أيضا يوجد طريقة أخري (وهي مفضلة لي بصفه شخصية)

وهي إستخدام Server.Transfer

ولمزيد من المعلومات تابع المقال التالي :

Passing Values between ASP.NET Web Forms

والسلام عليكم

29_5.gif

سورة العنكبوت

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

مشروع Arabic PHP.NET

حلم طالما كان يراودني حتي قهرته بحمد الله ليكون حقيقة

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

سلسلة أنماط التصاميم البرمجية Desgin Patterns

سلسلة أنماط التصاميم البرمجية Desgin Patterns | كتيب هذه الدروس (إعداد أحمد غريب)

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

كنترول ASP.NET DataGrid CheckBoxColumn

كنترول ProgressBar

كنترول UltraPanel

مشروع الكنترول الأنيق (إهداء للفريق العربي)

الورش الإلكترونية IT Workshops

تعقب الأخطاء error tracing

كنترول ColorPicker لمطوري الويب

RichTextBox Control لمطوري ال ASP.Net

حمل كتاب جافا سكربت عربي

#4

شكرا لك على هذه المشاركة.

اعتقد أن المشكلة في server.transfer هي انها لا تحول المستخدم الى الصفحة الجديدة بل تقوم فقط بتنفيذ الصفحة الجديدة وارسال الناتج الى المستخدم ان في احقل العنوان لدى المستخدم سوف يبقى اسم الصفحة القديمة. على كل انا لست متاكد من هذا ولكنني الان لست على كمبيوتري لذلك لا استطيه التاكد.

وحدن بيبقو متل زهر البيلسان وحدهن بيقطفو وراق الزمان

بيسكرو الغابي بيضلهن متل الشتي يدقوا على بوابي على بوابي

يا زمان يا عشب داشر فوق هالحيطان ضويت ورد الليل عكتابي

برج الحمام مسور و عالي هج الحمام بقيت لحالي لحالي

يا ناطرين التلج ما عاد بدكن ترجعو صرخ عليهن بالشتي يا ديب بلكي بيسمعو

http://www.mazikana.com/Songs/F/Fayrouz/mp...uz---Wahdon.mp3

#5

صحيح كلام DotNetExpert .. هي قريبة من فكرة ال Server.Execute و تقوم بتمرير الباريمترات لصفحة أخرى يتم تنفيذها ضمن نفس الصفحة ..

بتذكر أني قرات أن لها عيوب مما يجعلها غائبة عن الاستخدام المتداول لدى المبرمجين .. سوف ابحث عن السبب في كتاب عندي في الويكند لانو في مدينة اخرى:)

You can fly while you can touch the sky

#6

اوكي لاقيت الكتاب عندي بالبيت ...

المكتوب هو التالي :

Server.Transfer تقوم بنقل جميع محتويات الصفحة سواء مخزنة في Session أو Application Object او Request collections التي وجدت في الصفحة الأولى للصفحة الثانية و الفرق بينها و بين ال Server.Execute أن الأولى لا تعيدنا للصفحة الأولى التي كنا فيها أما الثانية فتقوم بتضمين الصفحة و تنفيذ أكوادها ضمن الصفحة التي استدعت الصفحة الثانية عن طريق Server.Execute.

أيضا هناك فرق بين ال Server.Transfer و ال Response.Redirect و هو أن الثانية Redirect تقوم بتحويل المستخدم للصفحة الجديدة دون تنفيذ كامل الصفحة أما ال Server.Transfer فهي تقوم بنقل جميع محتويات الصفحة بعد تنفيذ كامل أكواد الصفحة ..

مثال توضيحي يوضح الفريق بين Server.Execute و Server.Transfer :

// Server.Execute :
// Page1.aspx
 Response.Write("Line 1       Page1.aspx");
 Server.Execute("page2.aspx");
 Response.Write("Line 2       Page1.aspx");


// Page2.aspx
 Response.Write("Line 1       Page2.aspx");
 Response.Write("Line 2       Page2.aspx");

// المخرجات
Line 1        Page1.aspx
Line1         Page2.aspx
Line2         Page2.aspx
Line2         Page1.aspx

/////////////////////////////////////
//Server.Transfer :

// Page1.aspx
 Response.Write("Line 1       Page1.aspx");
 Server.Transfer("page2.aspx");
 Response.Write("Line 2       Page1.aspx");


// Page2.aspx
 Response.Write("Line 1       Page2.aspx");
 Response.Write("Line 2       Page2.aspx");

// المخرجات
Line 1        Page1.aspx
Line1         Page2.aspx
Line2         Page2.aspx

انتبهو في المثال ألأول أنه تم تنفيذ السطر الأول و عرضه ثم عرض محتويات الصفحة الثانية و بعدها عودة لإكمال الأكواد الموجودة تحت ال Server.Execute ..

حظا موفقا للجميع

تم تعديل هذه المشاركة بواسطة محمد خليل أبو صلاح في 19 مارس 2005 في 13:56

You can fly while you can touch the sky

#7

بسم الله الرحمن الرحيم

مشكور أخي DotNetExpert وأبو خليل علي التعقيب

اقتباس
بتذكر أني قرات أن لها عيوب مما يجعلها غائبة عن الاستخدام المتداول لدى المبرمجين

ولكن ما هو هذا العيب الذي تقصده فلم تواجهني مشكلة ما حتي الأن عند إستخدامي لهذه الطريقة

كما أحب أن أشير أنه يمكننا نقل البيانات بواسطة Server.Transfer

من خلال إستخدام Context كما يلي

page1.aspx

    this.Context.Items.Add("var1", "arabteam2000");

    this.Server.Transfer("page2.aspx");

page2.aspx

    string var = this.Context.Items["arabteam2000"].ToString();

والسلام عليكم

29_5.gif

سورة العنكبوت

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

مشروع Arabic PHP.NET

حلم طالما كان يراودني حتي قهرته بحمد الله ليكون حقيقة

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

سلسلة أنماط التصاميم البرمجية Desgin Patterns

سلسلة أنماط التصاميم البرمجية Desgin Patterns | كتيب هذه الدروس (إعداد أحمد غريب)

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

كنترول ASP.NET DataGrid CheckBoxColumn

كنترول ProgressBar

كنترول UltraPanel

مشروع الكنترول الأنيق (إهداء للفريق العربي)

الورش الإلكترونية IT Workshops

تعقب الأخطاء error tracing

كنترول ColorPicker لمطوري الويب

RichTextBox Control لمطوري ال ASP.Net

حمل كتاب جافا سكربت عربي

#8

أخي الحسين انا ما فهمت القصد من صفحة page2.aspx التي كتبتها .......

بخصوص قصة البعد عن استخدامها فهي في كتاب اخر سوف أرد بعد الويكندد إن شاء الله حتى يكون الكلام معتمدا على مرجع :)

You can fly while you can touch the sky

#9

بسم الله الرحمن الرحيم

أولا أسف علي التأخير في الرد وذلك لإنشغالي التام هذه الأيام

اقتباس
انا ما فهمت القصد من صفحة page2.aspx التي كتبتها

فهي إحدي الطرق المتبعة لتخزين البيانات في المصفوفة Context.Items

ثم نقوم بإرسالها إلي صفحة أخري من خلال Server.Transfer

ولكن يبدو أني أخطئت في كود الصفحة page2.aspx

التصحيح

string var1 = this.Context.Items["var1"].ToString();

والسلام عليكم

29_5.gif

سورة العنكبوت

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

مشروع Arabic PHP.NET

حلم طالما كان يراودني حتي قهرته بحمد الله ليكون حقيقة

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

سلسلة أنماط التصاميم البرمجية Desgin Patterns

سلسلة أنماط التصاميم البرمجية Desgin Patterns | كتيب هذه الدروس (إعداد أحمد غريب)

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

كنترول ASP.NET DataGrid CheckBoxColumn

كنترول ProgressBar

كنترول UltraPanel

مشروع الكنترول الأنيق (إهداء للفريق العربي)

الورش الإلكترونية IT Workshops

تعقب الأخطاء error tracing

كنترول ColorPicker لمطوري الويب

RichTextBox Control لمطوري ال ASP.Net

حمل كتاب جافا سكربت عربي

هذا الموضوع مغلق.

مواضيع مشابهة