• 0

كيفية نقل صورة ورقم تعريفها من صفحة لأخرى بتقنية ASP.NET

مرحباً،
لدي صفحتين بإمتداد (.aspx)، ولدي في الصفحة الاولى صورة مخزنة في قاعدة البيانات وتم إظهارها في الصفحة، وهذا الكود الخاص بها:

<asp:Image ID="Image1" runat="server" Height="194px" Width="188px" ImageUrl='<%# Eval("Card_Path") %>' />

طبعاً (Card_Path) هو إسم العمود في الجدول الموجود في قاعدة البيانات، ولدي أيضاً في نفس الصفحة الأولى رابط تحت الصورة نفسها، وهذا الكود الخاص به:

<asp:HyperLink ID="HyperLink1" runat="server" Text="Detailed / Edit"  NavigateUrl='<%# Eval("Card_id", "~/send-card.aspx?Id={0}") %>'>Select Card</asp:HyperLink>

طبعاً (Card_id) هو رقم تعرف الصورة -الـiDentity- وموجود في نفس الجدول في قاعدة البيانات.
الآن كل شيء يعمل، وعندما أضغط على الرابط (HyperLink) يتم نقلي للصفحة الثانية التي تحتوي على TextBox و Image Control، ورابط الصفحة الجديدة يكون كالتالي على جسب رقم الـID أو الرابط الذي ضغطت عليه، مثال:
http://localhost:20133/send-card.aspx?Id=16
الآن الـId=16 ، وطبعاً اذا ضغت على رابط الصورة 1 فالـid=1 :)
الآن ما أريده أنا بالتحديد عندما نقلي للصفحة الثانية التي بإسم (send-card.aspx) يتم تلقائياً ملء الحقلين، مثلاً الـ(TextBox) يتم وضع قيمة رقم الـid للصورة المختارة من الصفحة الاولى. ويتم وضع الصورة (أي جلبها من قاعدة البيانات) ووضعها في الـ(Image Control) بنفس الشكل الذي كانت عليه في الصفحة الاولى.
طبعاً أنا لدي أكثر من صورة في الصفحة الاولى، فكلما ضغطت على رابط يتم نقلي للصفحة الثانية وإستبدال الصورة الموجودة فيه (اذا كان هنالك صورة) بالصورة التي تم ضغط الرابط أسفلها وجلب رابط الصورة (Image Path) من قاعدة البيانات ليتم وضع الصورة في الصفحة الثانية في مكانها المخصص يعني الـImage Control. أنا فاهم للفكرة العامة لهذا الأمر، لكن صعُب علي كتابة الكود، فهل من الممكن المساعدة؟ شكراً للجميع :)

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 1

أولًا يوجد طريقتين لتمرير البيانات من صفحة لأخرى في ASP.Net إما باستخدام QueryString أو Session راجع الروابط أدناه.

ماذا تعني QueryString في ASP.Net وما هي استخداماتها؟

ماهي Session في ASP.Net وما هو استخدامها؟

بالنسبة لسؤالك الأول كيف تملأ الـ TextBox بقيمة رقم الـ id للصورة المختارة من الصفحة الأولى فأنت قمت بتمرير قيمة الـ  id للصورة في رابط الصفحة باستخدام QueryString كما هو واضح لدي فعليك الآن أخذ قيمة الـ id من رابط الصفحة الثانية بالطريقة التالية ثم إسنادها للخاصية .Text للـ TextBox:

private void Page_Load(object sender, System.EventArgs e)
{
this.txtBox1.Text = Request.QueryString["id"];
this.txtBox2.Text = Request.QueryString["Name"];
} 

الآن أصبح معرّف الصورة id لديك ولجلب الصورة من قاعدة البيانات قم بعمل الاستعلام المناسب باستخدام الـ id لجلب المسار Card_Path الناتج من الاستعلام وإعطاءه للعنصر Image Control

بالتوفيق :)

تمّ تعديل بواسطة Lujain
2 اشخاص أعجبوا بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

شكراً لك ، تم الحل :)

1 شخص أعجب بهذا

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن