كورس Asp.net core MVC- منحة ITI شرح م كرستين 2024 #4
By Syntax Error
Summary
Topics Covered
- Views Default to Dynamic Losing Type Safety
- @model Syntax Enables Strong Typing
- Code-First Generates DB from Classes
- Foreign Keys Need Explicit Attributes
- Lazy Loading Breaks Navigation Properties
Full Transcript
لا هي ايام الام في سي لطيف ايه ده الكورس ب تعالوا كده نبص على الكونتنت بتاع الحاجات اللي احنا هناخدها النهارده نبعتش نعمل اللي علينا طيب اخر حاجه كنا وقفنا عندها المره
اللي فاتت كان ايه؟ عبد الله مش عبد الله احمد كمان ما تخليك عبد الله وخليك حلو
احنا لاب فيها خمسه عبد الله يبقى التراك اللي فات انتوا اللي عبد الرحمن ايوه صح عبد الرحمن لا التراك اللي فات بقى كانوا خمسه عبد
الرحمن وواحد اتهم واحد عبد الله فهدخل كلهم عبد الله طيب تعالوا كده احنا اخر حاجه كنا واقفين
عندها المره اللي فاتت ان احنا عملنا ان بروجكت كامل تمام وكان الشغل كله على داتا تمام الستاتيك داتا جايه من الاستات
ورايحه من الاستات وكل حاجه تمام شغلنا بقى النهارده في ثلاثه توبك عايزين نتكلم عنهم
تمام اول توبيك عايزين نتكلم على نعمل حاجه اسمها سترونج تايب فيو
ماشي تاني حاجه عايزين نتكلم على خلاص عايزين نتعامل مع الداتابيس نبدا بقى بدل ما احنا عاملين موديل على
ستاتيك ليست لا هنعملها يوزين الداتابيس وهنستخدم في المديول ده فريمورك كود فيرست الشغل بتاع امبارح
واخيرا ماشي يا كريم لو اتكبت هتعزمنا كلنا على قهوه اللي هيجيب قهوه وتتكب ممنوع ان احنا نشرب مشروبات في كوبايات في
القاعه لانها بتتكب والاثار بتبان ماشي بتتقفل فاللي هيك قهوه هيعزم الدفعه على القهوه البريس
ايه هيضحي بيه نحافظ على حاجتنا طيب اخر حاجه خالص عايزين نتعامل معاها
النهارده عايزين نشوف الطرق المختلفه عشان نباصي داتا من الباك اند متمثل في الكنترولر متمثل في كود السي
شارب السي شار تمام الى الفرونت اند متمثله في ايه الفرونت ان في شاشات الفيو اللي هي مكتوبه بالاتش تي ام طرق المختلفه بقى مش بس طريقه الموديل لا في لاث اربع
طرق تاني دول هناخم ماشي طيب تعالوا نبص على اول حاجه اللي هي ايه هي لو نفتكر كده حاجه كنا واقفين عندها
المره اللي فاتت قلنا ان احنا لما نتعامل مع ببقى عندنا في اسمها مين اللي اداها لنا مش عارفين احنا بنلاقيها عندنا وبيبقى
الداتا اللي بيبعتها الباك اند للفرونت بتيجي فيها وزي ما شفنا فانكشن بتاخد اكس وواي انا بعتلها اي وبي هي شايفه اكس وواي بنفس القيم بتاعه اي وبي تمام فقاللك احنا
بيبقى عندنا في برورتي اسمها موديل اللي بيبقى جنبيها المفك ده المفك ده يعني بوررتي ماشي طيب فقال لك دي بوربرتي
بيتسكن فيها المعلومه اللي جايه منين اللي جايه من الباك اند مين جابها لنا مين ما جاب لناش مش عارفين وقلنا ان هي باي ديفولت بيبقى التايب بتاعها داناميك يعني
تشيل العفريت الازرق ما تشتكيش ولا تقولش لا بتشتكي امتى في الران تايم لو اديتها حاجه ورحت طلبت منها حاجه تانيه في الكومبايليشن بتقول لك اتس اوكي ماشي كله
الدنيا سليمه حلوه زال اش تي ام ال كده بس تيجي في الران تايم تبدا تكتشف التايب الحقيقي للاوبجكت ده لو مالقيتش عنده الحاجات اللي انت طلتها او بتلاقي نفسها
مش عارفه تعملها تروح اكسبشن فكان لحد المره اللي فاتت واحنا بنعملها كان اسمها لوست تايب طول ما انت شغال على موديل نوعه ديناميك في لوست تايب مالهاش تايب مشاكلها
هتبان في في الران تايم فكنا عشان نتحيل على الموضوع ده كتبنا سطر كود احنا مش عارفينه هو ايه السطر ده اللي فيه الام سمول موديل ام سمول ولو لاحظت هتلاقي كلمه
موديل دي مش بوربرتي دي معمول عليها هايلايت باصفر واي حاجه معمول عليها هايلايت بالاصفر دي مش تي شار
اسمها ريزور سنتكس انت بتكتب سنتكس بيفهمنا ان اللي جاي ده سي شارب ففي بعض كي ووردز هتلاقيه معمول عليها هايلايت بالاصفر زي الات بس زي الات موديل دي
بتعلمنا حاجه تعالوا بقى نشوف دي بتعلمنا ايه هل احنا عارفين ان احنا عندنا في الدوت نت كل حاجه لازم تكون اوبجكت وكلاس صح يعني مافيش حاجه اسمها ستاند الون فانكشن ايه ستاند الون فانكشن كده فانكشن
في الهواء حتى المين يوم ما جوم عملوها عملوها في كلاس بروجرام قاللك مافيش حاجه اسمها بلوك اف كود كده امال اللي احنا بنكتبه ده بيجي ازاي؟ ولما باجي اعمل بلوك
اف كود كده اهو واعرف انجر اكس بيساوي 10 ازاي ده حصل ده ازاي بكتب اون فلاي كده لاينز اوف كود اون فلاي قال لك لا يا باشمهندس هو مافيش حاجه اسمها كده احنا
السي شارب فولي اوبجكت اوريند اول حاجه من مبادئ الفولي اوبجكت اورينتد ان اي حاجه لازم تبقى جوه كلاس او ستراكت لازم يبقى لها تايب او انمريتور زي ما اخدته او
ديليجت او او لازم يكون لها تايب مافيش حاجه اسمها فانكشن كده تمام طيب حلو يعني معنى كده ان انا لما بكري فيو وبلاقي في بوررتي اسمها موديل يعني معنى كده ان في
كلاس بيحصلله اوتوجينت صح طيب قاللك طيب حلو وعشان كل الفيوز يبقى لها نفس البيهيفور معايا يا
شباب معايا علي عشان كل الفيوز يبقى لها نفس البيهيفير فقال لك هنعمل لها بيرنت كلاس بحيث اي فيو انت تكريته ياخد نفس الافيكت
والبيهيفير والاتربيوتس والبروربرتي بتاع بتاعت بالفيو اللي قبله فقالوا هنعمل لها بيس كلاس البيس كلاس ده زي ما الكنترولرز كلها بتورث من كلاس اسمه كنترولر قال لك كل الفيوز اللي انت هتكريتها هنكريت لها
كلاس وبيورث من بيس كلاس طب اسمه ايه البيس كلاس قال لك اسمه ريزور بيج يعني مايكروسوفت يوم عملت كده اهو قالت لك وانا بديزاين هديزاين كلاس اسمه كنترولر في
الريكويست في الريسبونس في السيشن في اليوزر وهنعمل لك برض كلاس تاني في الام في سي اسمه ريزر بيج حلو الكلام طيب حد يقدر يخمن الكلاس اللي عاملاه
مايكروسوفت البلت ان تمام الكلاس اللي اسمه ريزور بيج ايه الحاجات اللي بتورثاني في حاجه واحده اكسبكتف اللي هي
الموديل اللي انا بلاقيها عند كل الفيوز اللي عندي ماشي ده البيس كلاس طيب تعالوا نفكر مع مايكروسوفت جايه الديزاين كلاس
اسمه مدي كل الفيوز اللي احنا بنعملها هتورث منه وهيبقى عندها داتا في الموديل اوبجكت ده في الديزاين تايم مايكروسوفت
قادره تحدد نوع الموديل ده يبقى ايه لا قمت خليهلك ايه لو انا بديزاين كلاس وفي برورتي او معلومه معينه انا مش قادره احدد نوعها هي انجر ولا اوبجكت ولا سترينج ولا
ليسته بنعملها ايه كاوبجكت اورينت نعملها جينريك صح التي خلاص فقال لك نفس اللي عملته مايكروسوفت راحت قالت لك التي
دي البروبرتي اللي اسمها موديل دي هنخليها جينري طيب لما جت مايكروسوفت خليتها جينري كاوبجكت اورينتد لما يبقى عند حضرتك
اتليست و انفو جينريك الكلاس كله بايه كله جينك خلاص مابقاش اسمه ريز اسمه ريج او تي حتى لما بجيت
منهجين زي حضرتك لما بتيجي هي اسمها ينفع من غير ما اقوللها تبقى لازم هي خلاص
الكلاس ده شاكب عليه كده راكب القوسين بتوع الجينريك ما اسموش ليست بس اسمه ليست اوف ماشي فقال لك خلاص ما دام الكلاس ده
عنده في بوررتي اسمها موديل هي جينريك فبالتبعيه الكلاس نفسه بايه بجينرك طيب حلو الكلام اهو ادينا هنا
انا ككلاس انا نفسي بايت اوف تي طيب حلو
الكلام نرجع شويه للاوبجكت اورينت لو كلاس جينك وانا ورث منه عندي اتنين سيناريو حد عارف ايه السيناريوز بتوع الجينريكس يا
اما مش برض انا كشايلد مش قادر احدد نوع البروبرتي دي هتبقى ايه فانا بالتالي بقيناريك صح يا اما في الكلاس التشايلد
انا عارفه احدد انا يوم هورس من ده هورس من ايه سبيسيفيكلي فخلاص هبقى انا ما بقتش جينرج صح ولا غلط ماشي فعندي تو كيسز فجت مايكروسوفت قالت لك ايه؟ طيب تعال نتخيل
السيناريو الاسوا مايكروسوفت انت كريت فيو ومش قادر تحدد الموديل ده هيبقى نوعه ايه قالتلك خلاص يبقى انت وارث من تي فانت بالتالي
بقيت برض تي زي مثلا عملنا كلاس الكلاس ده على فكره اللي بتكريته مايكروسوفت اسمه بيبقى طويل عريض انا مابستخدموش ومش بشوفه الا في بعض الاحوال كده في
اللا شايفينقطنا بس مش بنستخدمه في حاجه حلويه مثلا وارث من الريزورت بيج بس انا في
الديزاين تايم مايكروسوفت هنتخيل ان هي مش قادره تحدد نوع الجينريك ده ايه فقالت لك احنا هنخليه في تي طب حلو فبالتالي ما دام
انت ورثته في تي فانت بقيت اوف ايه اوف تي ما عنديش بديل خلاص ما انت مش عارف تحدد نوع الحاجه اللي عند البيرنت فانت بالتالي
كتشايلد انت مش عارف فبقيته في تي برض طيب تخيل معايا مين اللي بيكارت اوج من الكلاس ده اكيد مش انا وانت انا لما باجي اعمل
ران واقول يا اكشن انا عايزه ارجع الفيو الفلاني تروح هي رايحه للكلاس بتاع الفيو ده تروح مكاريته اوبشن طيب لما بنيجي نكاريت اوبجكت لازم حضرتك تحدد نوع
البروبرتي بقى لان خلاص انا بكريت انستنس في اكتر من كده ايه انت مش عارف تحدد نوع الجينريك فيه ده انت بتنشا اوبجكت يعني لازم بقى خلاص وانت بتكريته
تاخد الديسيشن بقى الراجل ده هيبقى نوعه ايه التي دي هشيلها واحط ايه زي اخدتوا انتوا المثال بتاع الاستاك في الجينريك في الجينريك ايه المثال اللي
انتوا اخدتوه الكولكشنز احنا طول ما قاعدين في انترفيس جينيك كولكشن في انترفيس اسمه اي ليست جينريك ليست ماشي وفي اي انمرابل اوف
جينريك بس يوم ما اجي اكريت اوبجكت ينفع اكريت اوبجكت وافضل برض مخليه نفس الجينريك لا يقوللك ما ينفعش طب ازاي يا كريستين ينفع كده تعالوا نروح عند التست
ست كلاس ينفع اكريت ليسته واقول لها ليست اوف تي انا هكاريت اوبجكت دلوقتي ليست و يقوللك ايه اللي انت بتعمله ده انت بتكريت
اوبجكت يا باشمهندس عند الكريشن لازم تستوب بوينت كده وتقول لي ايه لا التي دي هتشيلها وتحط ايه عشان في الميموري اعرف احجز لك معاك ما انت لو فضلت تي يبقى انت بقى ايه ما فيش حد عارف بقى لا انت وانت
بالديزاين عارف ولا انت بتكارت اوبجكت عارف امال مين اللي هيعرف اليوزر ما يقدرش خلاص فتخيل معايا مايكروسوفت وهي جايه
دلوقتي تنشا اوبجكت من الفيو ما هياش عارفه نوع الموديل ايه فبالتالي مش هتعرف تكاريت اوبجكت مش هتعرف تكريت اوبجكت فعشان تطلع
مايكروسوفت من الموضوع ده راحت قالت لك ايه بص يا باشمهندس احنا لما نيجي نورث عشان ما نزعلش من بعضينا لو انت ما حددتش انا هحدد
لك ولما جت تحدد راحت قالت لك انا هورث من الريزوربيج اوف ديناميك عشان انا ما حددتش شايفين كده انا حددت نوع الوراثه وشيلت جينريك وحطيت مكانه
طايب بعينه فدلوقتي التشايلد بقي جينريك ولا ما بقاش لا خلاص ما هو الحاجه اللي كانت مخليها جينريك حدد نوعها فخلاص الا اذا كان هو طبعا جواه في
حاجه جينريك تاني فده مش هيبقى في الموديل بتاعنا اصلا حلو الكلام طيب فقاللك باي ديفولت ان كيس لو انت ما حددتش انا
هورثك من الريزوريج اوف ديناميك فتنزل عندي البروبرتي بتاعه الموديل نوعها ايه ديناميك حلو الكلام طيب وفي الحاله دي
يا شباب احنا بنقول احنا كريتنا فيو البابلك بوررتي اللي فيها نوعها داناميك تشيل اي حاجه اسمها موديل الفيو اللي نعملها بالطريقه دي من غير ما انا احدد
لها التايب بتاع الموديل ايه اسمها لوسلي تايب فيو اسمها ايه يا شباب لوسلي تايب هي فيو مش عارفه نوعها ايه فبالتالي الانجن
خد القرار عنك ما هو لازم بقى يحدد نوع عشان يقدر يكاريت اوبجكت في الران تايم ماشي مش انا اللي بكريت اوبجكت ده اللي
بيكاريته هو فقال لك في الحاله دي اسمه لوسلي تايب فيو ليه لان انت مش مديني نوع الموديل وده اللي بيحصل بصوا كده يا شباب
لو جينا هنا في الفيو الغلبانه بتاعتنا وشيلنا السطر ده ولقيت وقفت على الموديل هتلاقيه كده واحنا عاملين ماجنيفاير يقول لك
انت ورست من الريزورج اوفاميك وبالتالي البروبرتي دي نوعها بايهامك طيب هل هفضل كده اتفقنا مشاكل الديناميك في الران تايم مش في الكومبايشن
ونفضل نروح ونيجي بلاقي نفسنا بنستهلك وقت على الفاضي خلاص اشتغل رونجيب اشتغل رونجيب ازاي قاللك وانت بتورث بدل ما تخلي
ياخد القرار عنك الري قله مكانك دهيب اللي انت عايزه طب اقوله له ازاي؟ والسطر ده انا مش بملكه ده كلاس بيحصلله اوتو جنريت انا مش بشوفه
حتى انا يا دوبك بشوف صفحه السي اس اتش تي ام ال هجيب منين بقى السطر اللاين اوف كود ده قال لك لا انت بتشوف اه صفحه السي اس اتش تي ام ال احنا هنعمل لك ريزورس سنتكس
تديني الجينريك التايب اللي انت هتكتبه هيتجيلي هنا طب ايه بقى اللي بتوفره لي الريزر انجن قاللك تكتب الات مود سمول اللي احنا
كتبناه عشان كده دايما بقول لك الات موديل سمول اللي بيجي بعديها تايب ليه؟ عشان ده اللي هيتسكن هنا ولازم اللي يتسكن في الجينريك يبقى
تايب دوت نت تايب سيلار تايب ماشي فقال لك تمام فتجي لي كده في اول الصفحه ولازم يتحطوا مره واحده بس على مستوى الفيو لان السطر ده بيتكتب مره واحده هاجي اقول له
الات موديل سمول دي هيبقى لونها اصفر واقول له مثلا ستيودنت يبقى انا ساعتها ورست من الريزور بيج اوف ايه اوف ستيودنت وبدل ما انا هو كان كاتب
دايناميك هيسكل لك مكانها ايه ستيودنت يبقى انا دلوقتي شغال لوسلي تايب ولا سترونج تايب لا سترونج ليه لان بيسد على تايب في اوتو كومبلي اوتو كومبليت ولو
كتبت حاجه غلط مش موجوده يضرب اكسبشن يديك ايرور ماشي الكلام طب عايز اشوف الخطوه دي قال لك حضرتك لما بتيجي في الفيو وتقول
لها ات موديل سمول بص يقوللك ايه انت هتحدد لي الفيو بتاعه الموديل فور فيو التايب بتاع الموديل وبعديها لازم اكتب
تايب هكتبله مثلانت مثلا كتبت هتروح تلاقيه يقوللك الموديل الوقت طبعا هو اعترض لان هي ستيودنت وانا بفورتش عليها انا بوريكم سطر الجين قاللك انت دلوقتي
واخد معلومه اسمها موديل نوعها ايهودنت ليه عشان ورست من الريزور بيج اوف ستيود فشال الجينريك وحط التايب طيب لو
انا قلت له لا ده هو ان شاء الله هيجيلنا ليست من الستودنت يبقى انا وريست من الريزوربيج اوف ليست اوف في ستيودنت وبالتالي الموديل بقت نوعها ايه لسته من
الاستيودنت ماشي دي اول حاجه عندنا النهارده ازاي نخلي الفيو بتاعتنا سترونج تايب فيو اكيد طبعا لو انت هتشتغل وعندك
القرار خلي سترونج على طول حته الديناميك دي مش حلوه خالص حلو الكلام طيب ده اول توبيك في حد عنده اي سؤال طيب التوبيك
اللي بعده هو احنا هنفضل نجيت ونسيت في ستاتيك داتا اهو برض الاستاتيك باد داتا دي ليميتد اول ما بقى في الابليكيشن وافتحه وبرجع لاصله زي ما انت معرفها في الميموري هترجع عايزه استور بقى البيانات
دي في حاجه اللي احنا عاملين على حسها الام في سي افضل استاتيك داتا كنت عملتهم جسمه واشتغلت جافا سكريبت والبرفورمنس هيبقى يعني فت النت مافيش حد هيقدر يكلمك
بقى مالكش مسيق لا ما احنا قلنا من البدايه عايزين نعمل اكتف سيرفر بيج يعني ايه اكتف سيرفر بيج اللي هي اس بي ان الداتا في حد يدخل يضيفها من الداشبورد
وحد يحس بالتعديل شوف الاضافه حد يدخل يمسح والناس تشوف الداتا بعد المسح مش عايز اول ما اقفل كل ده يتصفر ويرجع على الخمسه سته برودكت بتوعي قال لك طيب حضرتك
عايز تتعامل مع الداتابيس يوزين السي شارب اكيد دلوقتي سي شارب ايه التولز اللي بتساعدني ان انا اشتغل مع الداتابيس قاللك اول تول اللي هي الادو ايه ده احنا
بنسبورت الادو دوت نتزل الباكج بتاع سيستم دوت داتا دوت سيكوال كلاينت واعمل كونكشن واعمل كومانس عيش عيش حياتك مافيش اي مشاكل
حلو الكلام في شركات بتفضل الادو عشان كبرفورمنس وايز اسرع منيتي فريمور لان انت بتتعامل مع داتا بيز دايركت مافيش ليرز في النص ماشي في شركات تاني يقوللك لا احنا
عايزين نشتغل انتيتي فريمورك قاللك عند حضرتك في تو مديولز في الانتي فريمورك ممكن تشتغل داتابيس فيرست ودي سهله خالص ان انت بتجينريت الداتابيس
في الاول في السيكوال وتيجي تقول له لو سمحت عايز اعمل سك فولدين للداتا بيز دي يروح جايب لك الكلاسز اللي انت عملتها امبارح واشتغل عادي ماشي المديول التاني
اللي هو ايه بيرست ان انا اعمل الكلاس داياجرام زي اللي اديناه لكم امبارح كلاسز وريليشنز ما
بينهم اسوشيشن اجريجيشن مش عارفه مين وانت الديزاين الكلاس وبعد كده تروح تعمل لي مايجريشن تروح عامله لك الداتابيس طبعا
حضرتك لازم يكون عندك الفلكسبيلتي زي ما هتانجوين مع الشركه تدخل تشترك معاه اه فخلاص بقى ساعتها ايه هشتغل في حاجه قديمه معاك داتا بيز اوريدي موجوده
وعايز تزود فيتشر عليها بحاجه من الاي بي ايز او الام في سي فخلاص مش مستاهله ان انا اروح اعمل استراكشر تاني وخلي بالك على فكره لو انت
جيت داتابيز اوريدي موجوده وعملت كود فيرست وعايز تد عليها ممكن اعمل اد مايجريشن عادي وهو الحاجات الجديده هيروح يعمل لها ابلاين بس المهم بما لا يخل
الكونسترينز الموجوده يعني مثلا انا مدخله بيانات كتيره في الداتابيس ريكوردز كتيره جدا وجيت تطلب مني ان انا ازود
كولوم في التيبل ده وهو مش بيقلون نل فيجوا يحطه انا عندي 10 10 ستيودنت محطوطين فعاوز يسكن كولوم دلوقتي الديفولت فو بتاع الكولوم هتبقى ايه نل ن وانا
قايله له كونسترين not الا نل يقوللك بقى يا باشا انا مش هضيف الكولوم ده اصلا لان لما جيت اضيفه لقيته بيفايرت الكونسترين بتاع الا نال وهو لازم احط فيه نال فاحنا
ممكن نهزر معاه نروح نعمل ايه نسيت ديفولت حط لهم ديفولت او اروح اخليه نلابط بعد ما اسكن لهم داتا ارجع اقول له لا ما تخليهوش نلب
يعني في اكتر من حاجه ساعات المايجريشن ما تشتغلش معانا مش عيبته المايجريشن انت اللي بتفايوليت الكونسترينز والسيول ما فيهاش هزار ينفع ماشي ما ينفعش يرجع
اكسبشن ماشي طيب احنا في التراك بتاعنا هنشتغل بايه؟ هنشتغل بانيتي فريمورك كور كود فيرست ماشي خلي بالك لو انت شغال نون كور
في باكجز بتنزل لو شغال كور في باكجز تانيه بتنزل لو شغال نون كور بينزلوا الانتي فريم وورك بس اسمها انتتي فريمورك نقطه باكدج واحده بتنزل ودي لازم تشتغل
على السيكوال وتشتغل على دوت نت العاديه دوت نتعادات دوت نت فريمورك ماشي ما ينفعش انزلها على كور ولو نزلتها هتنزل ويعمل لك عليها المثلث بتاع الايجنور لا والله انا
مش بعملها سبورت مش مكتوبه بالدوت نت بتاعتي مش بالاستاندرد بتاعتي العكس بقى الانتي فريمورك كور في
فين منها ممكن تنزل على كورن منها مش الكل القديم شويه وينفع تشتغل على كور ماشي بس احنا طبعا شغالين كور مش هجا للمديول ده
وجورك احناعمل تو باكجز قالتلك احنا عاملين باكج اسمها انت فريمور كور دي بتنزل على اي دي بي ام اس هتشتغل على اي دي اس بتعملها وبعد كده بدخل عايز اشتغل
سيكال انزل عايز اشتغل على البوست خلاص بتاعته عايز اشتغل
اروحش عندنا قبل كده هي غير كده شوف حد تاني غيرنا تمام لا في الكور قال لك لا نزل عادي عايز
تشتغل على الميموري اصلا اشتغل بانتي فريمورك فروم ميموري حلو الكلام طيب فاحنا دلوقتي هنشتغل طبعا انت فريمور كور سيكال
سيرفر صحناك على بقى ماجيبش معايا الحمد لله لحقناك لحقتنا طيب نكمل في ناس كتيره اون لاين الناس دي غياب
لو هي مش مستقلين على فكره يوسف بس ولا الباقيين معانا طيب نكمل بعد كده احنا دلوقتي هنشتغل على
انتيتي فريم كور كود فيرست طيب الاول قبل ما هبدا بالكود فيرست بعمل الكلاس داياجرام او بعمل الاي ار دي على ورقه واحنا قاعدين كده مع بعضينا طبعا او لو تول يبقى كتر الف خيركم يعني تمام انا ايه
الداتا بيز اللي هشتغل عليها احنا ان شاء الله في المحاضره بتاعتنا من النهارده هنعمل ديزاين لدايز هنفضل شغالين عليها لاخر الايام لحد اليوم ان شاء الله كده
التاسع يدينا واديكم طعم وانتم نفس الكلام هطلب منكم النهارده اديكم ار دي وانتم هتعملوا لها الكلاسز بتاعتها والداتابيز بتاعتها اه يمكن احنا النهارده مش هنعوز
غير جدول واحد فما يجيش واحد يقول لي انا هعمل الكلاس ده بس زي ما عملته امبارح احنا عملنا دول عشان الكويريز عليهم لا احنا هنعمل النهارده الداتابيس كامله عشان
الايام اللي جايه هنشتغل على نفس داتايز مش كل يوم هنعمل مايجريشن ونبدا ندخل داتا ويفايليت الكونسترين ونعك والحاجات دي احنا هنعمل الداتابيس كامله بجداول كامله
النهارده هيدي الاس بتاع النهارده للامانه انك تعمل الكود بتاع الداتابها ليه عشان نظبط شغل الايام اللي جايه
ماشي تعالوا كده نشوفمشي عليها في المحاضره هنعمل داتابيز خاصه بالموظفين والاقسام اديت
وادي الموظفين طيب لو قلنا الريليشنز ما بين الموظفين والاقسام 1 تو و تو ميني ولا ميني تو ميني و تو ميني طيب نقراها
ازاي الميني من يمه مين والوان من يمه مين ايوه الميني لا ما دايما تبدا القرايه بوان انستنس الديبارتمنت الواحده بيشتغل شغل فيها موظفين كتير والموظف
الواحد بيشتغل في ديبارتمنت واحد شايفين واحد واحد يبقى الواحد هو اللي هيتسكن عند الديبارتمنت طيب هاجي هنا اهو اروح اقول ادي الديبارتمنت اهو ادي الريليشن بتاعها
بيورك فيها مثلا موظف واحد موظفين كتير ماشي والموظف بيشتغل في ديبارتمنت واحد طيب لو
جينا عايزين نعمل الكلاسز بتاعتها دي شايف الديبارتمنت فيه بيشتغل موظفين كتير فده جواه ليسته شايف الكلام بالعربي اهو حط فيه ليسته ما تلخبطش ما تقولش مش عارف
اقرا ريليشن مش عارف احط مين عند اوبجكت ومين احط انت من قرايتك بتقول لي الديبارتمنت فيه كتير حط ليست الموظف بيشتغل في ديبارتمنت واحد حط عند الفورين
كي اوبجكت من ديبارتمنت حلو الكلام طيب تعالوا كده نعمل الكلاسز بتاعتنا اولا طبعا عشان ابدا الكلاسز لازم انزل الباكجز لسه الموضوع فريش معاكم انتوا وفاكرينهم
الباكدج دلوقتي بتاع السيكوال سيرفر انت تفريمي الكورسكوال سيرفر لان انا هشتغل على السيكوال سيرفر وهنزل بتاع التولز عشان اد مايجريشن ابديت داتابيزريم
ماجريشنز الكلام اللطيف بتاعته فنظبط الانفايرمنت وبعد كده نبدا نكتب الكلاس بتاعتنا نفتح البروجكت بتاعنا مانج الناجت باكدج مانجر نروح على
البراوز مش الانستولد الناجدت باكدج مانجر ده على فكره احنا كنا في البدايه بنتضايق منه لان كنا كنا مولفين ان كل حاجه تبقى مع مايكروسوفت يا كريم معايا
كل حاجه كانت بتبقى عندنا في التول فلما عملت الناجت باكدج مانجر مايكروسوفت كنا متضايقين لنا هو لازم يبقى في انترنت عشان اشتغل كانت بتبقى مشكله كانت طلبه في سكن
ما عندهمش نت بس اكتشفنا ان هو يعني ده شيء عظيم جدا لان مايكروسوفت دلوقتي بتعمل ابديت وتنزل الباكدج انا بس بروح اشوفها منين من على الناجت باكدج واعمل ابديت او
اعمل انستول قبليه كنا نستنى مايكروسوفت لما تنزل فيرجن جديده عشان نشوف كل الابديتس واشيل التول او اعمل ابديت التول دلوقتي لا احنا انا التول دي منزلاها من
سنتين قبل كده كانت مايكروسوفت تفضل تجمع لنا كده حاجات اربع سنين خدوا فيرجن جديده يا اد خلال الاربع سنين دي انا فاقده الكومونكيشن معاها هم التيم عمال يطور
وانا في وادي وهم في وادي فجاه لاقي طلعوا بحاجات جديده مع بعض يجمعوا خمس ست تكنولوجيز كده يقول لك دي الجديد كان صعب انها تنزل كل شويه فيرجن من فيجوال
استوديو لكن الناجت باكج دي رهيبه خلت الدنيا ستيبل شويه بيع عندنا اول ما تنزل ستاندرد جديد خذ واعمل ابديت فريم وورك
جديد اعمل ابديت ماشي فهي حاجه جميله جدا تقدر تعمل ابديت تشوف الحاجات اللي نازله تقدر تشيل باكدج وانت كنت منزلها مش عايزها دلوقتي طلعت وحشه مش شغاله ماشي
احنا حاليا بنستخدمها مع الانتيتي فريمورك فاجي اقول له والله انا عايزه انزل الانتيتي فريم وورك كور دوت سيكوال لو ما كتبتش سيكوال هيقوللك طب عايز بتاعه الماي سيكوال طب
عايز بتاعه الميموري عايز بتاعه البوست ماشي فانت على حسب الدي بي ام اس بتختار فريمورك دوت سيكوال سير اه لان في بروجكتس مش عايزاها خلاص ما
نزلهاش عنده غصب يا رب ماشي طيب فانا باجي هنا انا لو شغاله 8 انزل الباكت بتاع 8 شغاله سفن انزل الباكج بتاع سفن اللي ما ينفعش ايه اني اكون شغاله دوت نت فريم
وورك سفن ومنزله باكج بتاعه 8 الاستاندرد اتغيرت فتلاقيه نزلها برده بس يجي يروح حاط لك عليها علامه ايه علامه التعجب دي ان انا
مش مش عارف اعمل لها ريستور مش عارفه اشغلها ماشي طيب انا اول ما هنزل الباكدج دي هتروح يسالك طبعا هيلاقي عشان ينزل دي محتاج شويه ديبندنسيس ما تنزلهاش انت
هيقول لك انا محتاج كل دول اعملهم انستول هقول له انزلهم ماشي روح اعمل لهم ابلاي اكسبت واحده منها هتلاقي الانت فريم ووركور مش لازم انزلها بايدي خلاص طيب
هتبدا بقى في الاوت بوت هنا يقول لك ده احنا عملنا وعملنا وعملنا وعملنا اول ما تلاقي اون ستول يبقى نزل عايزه اتاكد دلوقتي من الفيرجن اللي
نزلت مافيش مشكله ان حضرتك ممكن تفتح البند تلاقي الحاجات اللي نازله مع الفرمورك وال تنزللك في لوحدها الحاجات
اللي انت منزلها من على وهتلاقي هنا مفروض مكتوبن بتاعت ماشي طب انا عايزه اعرف انا البروجكت
بتاعي الفيرجن بتاعته ايه حضرتك لو وقفت عليه كده اسم البروجكت ودوست دبل كليك هيقوللك انت شغال دوت نت كور كام لو انت مش عارف انت طب انا 7 ولا 6 ولا 8 دوس على
اسم البروجكت يفتحلك الاكس فيها بتاعك ماشي طب احنا نزلنا ده الكانيه اللي انا عايزها بتاع مين انت تفريمور كور دوت
تولز طبعا ما ينفعش انزل سفن انت تفريم وركور واروح منزله تولز 8 ما ينفعش انزل دي 8 وانزل تولز في حاجات هتلاقيها تديك انك اكسبكتد
بيهفير في حاجات تشتغل فاحنا نمشي على الصح يعني ما دام من البدايه نزلت ايت انزل ايت كل ماشكلش ماشي فاجي هنا اقول له عايزه
التولز طبعا ما اختارش اللي عليه علامه اجنور لان وش بيقوللك ديبريكيتد يعني هو باينه خالص ان هي مش سبورتد لينا فدي بتاعتنا فريمور كور دوت تولز وانزل نفس
الفيرجن واقولله اعملها انستول كده هتلاقي الالنت بتاع الباكج ينزل فيها حاجتين بتاع السيكوال سيرفر وبتاعه التولز اي اكسبت يروح منزلها لك كده اهو
لو في باكدج عايز تشوفها سبورتد ولا مش سبورتدت هتفتح دي تلاقيه حاطط لك عليها علامه اجنود لو نزلت باكدج غلط عليها علامه التعجب يعني انت مش عامل لها سبورت
عندك يعني هي مش شغاله من الاخر خلاص طيب خلصنا الكلام ده كده احنا ظبطنا الانفايرت عايزين نبدا بقى نعمل الموديل كلاس بتاعتنا الشركات بره مش بتعملها في فولدر
تروح سحباها في ديل بروجكت جديد كلاس لايبراري عشان بيبقوا كتير جدا فبدل ما يفضلوا البروجكت يكبر معاك بيروح اول حاجه يعملوها يروحوا ماسحين الفولدر ده ويعملوا
كلاس لايبراري ويعملوا له اد ريفرنس ماشي احنا بس عشان مش عايزين نزوغ هنحطه فين هنا اهو عشان هم اتنين انتيتي مش اكتر خلاص طب انا عايزه ايه الانتيتيز بتاعتنا
عايزه اعمل دلوقتي بص الحركه دي هاجي اعمل اد نيو ايتم انا عايزه اد تو كلاسز دلوقتي الديبارتمنت والابلوي ممكن
اعمل اد كلاس اد كلاس او ممكن اعمل اد ايتم واقول له اختار لي شو كومباكت فيو يروح ضغطها لك كده الكومباكت فيو ده
جينريت اكتر من فايل في نفس الوقت بس بشرط اديله الاكستنشن فبص هاجي في الكومباكت هنا اقول له ايه ان شاء الله انا عايزه كارت كلاس اسمه
امبلوي وعايزه كارت كلاس اسمه ديبارتمنت دوت سي اس لازم شايفين فاصله ما بينهم بكومه اللي مش حابب يعمل كده اد كلاس ات
كلاس ماشي فبقوله لو سمحت اعملي شو كومباكت دي وهيحطها لك في الفولدر بتاع الموديل تلاقيه جينريت كلاس بتوعي مره واحده عايز تعملهم زي ما انت بتضيفهم
بمزاجك يا با مافيش اي مشكله خلاص طيب انا عايزه دلوقتي اعمل ايه عايزه اضيف الديبارتمنت فانا عايزه اديله اي دي وعايزه اديله
اسم وعايزه اديله اسم المانجر واللي حابب يحط فيه ليسته من الموظفين ماشي هنعمل بوررتي او ما تحطهاش
ماشي مش مشكله خالص عرف ليسته من الامبلويز هنسميها امس بس انا ممكن في شركه ما يكونش فيها لسه في ديبارتمنت جديد
ما فيهوش موظفين فانا عايزه اقول له خليه نلاور يعني الاو نل عشان ما يتضايقش مني خلي بالك لو انا عملت التايبس كده انتجر
وسترنج كده دي معناها لما يجي يحولها الى كولومز هتبقى not الا نول لو انا عايزه فيلد معين يالا نال احط جنبيه كويسشن مارك فساعتها وهو بيعمل
مايجريشن يقوللك ان المانجر نيم ده هتقو ن ماشي طيب عايزين نسكن كده الانبلويز قال لك نفس الكلام بص الموضوع سموث خالص عرف
بوررتي انجر اي دي لازم يكون عندي اي دي والمايجريشن اول ما بتلاقي ان عندك في كولوم اسمه اي دي يروح يخليه لك برايمري كي ويسيت عليك سترين ايدنتيتيتي يستارت
ويذ وان ينكرمنت باي و طب انا كبيزنس لوجيك ما عنديش اي دي ومش عايزاه ايدنتي قاللك سميه اي حاجه امب مثلا ناشونال اي
دي بس اتعب وتعال فوقيه اكتب اتربيوت كي يعني يا اما نسمي حاجه اي دي يا اما حط اللي انت عايزه بس حط لي اتربيوت كي لو مش حاطط اتربيوت كي مش هيرضي اعمل مايجريشن
هيقوللك لازم يسيت اي دي لان لازم تسيت برايمري كي عشان هو بيعمل عليه اندكسر والحاجات الحلوه بتاعه السيكوال بتاعته فانا هقول له لا انا عايزه اي دي انا مش
عايزه ماحطش اي دي خلي بالك من الريكومنديشن ان انا لو هاجي اعمل بوررتي اسمها نيم هنا ماشي ماكتبش امب
بنام انا عارفه ان دي كلاس امبلوي ايه فايده ان انا اقول انب ما لما بك اوبجكت منبلو النيم ده هيبقى عايد عليه ماشي طيب فانا هسميه ده نيم عادي كده
اهو وهناحطه سترين وممكن كمان نحط برت
تانيه ممكن كمان نعمل بر تالته رنجب تايتل الواد ده شغال ايه ونحط بوربرتي تانيه سترينج
الامج يو ار ال ونحط بوربرتي تالته كفايه ولا ايه سترينج
ادرس واخيرا بقى الراجل ده عاوز يتسكن في ديبارتمنت خلي بالك لو انا جيت بص انا ما حطاش اوبجكت هنا من الديبارتمنت ولا حاطه
فورين كي ولا اي هبل لما بتيجي تعمل مايجريشن لما بيلاقي ان في ليسته عند الموظف عند الديبارتمنت في ليسته من الموظف هيروح يكريت ليك فورين كي بس عيبه
في ايه هو حطه وعامل الريشن صح عيبه ان انا في الدوت نت لما كان اوبجكت من الامبري مش هعرف اوصل للفورين كيك ما عنديش
بوربرتي اه هو في كولوم هناك انا ما عنديش بوربرتي حلو الكلام طيب ففي ناس يقولوا لك ايه انا هكتفي بان انا اعمل اوبج
من الديبارتمنت وهو هيحط هيحط الفورين كي صح حلو كلامك بس انت برض ستيل عشان توصل للفورين كي بتاع
الديبارتمنت لازم تقول ايه هات للموظف دوتبارتمنت دوت اي دي طب عليه يعني المرار ده هنخسر ايه لو احنا كتبنا بوررتي فورين
كي قال لك بس خلي بالك هو كده كده لما هو بيلاقي الاوبجكت ده بيجينريت فورن
لوحده اسمه ايه بالاسم ده اسم الكلاس بتاعك وكلمه اي دي بعديه ده جنريتد فورين كي فلو انت جيت انت سميته كده ديبت اي دي
فهو سيبه ده سيب اللي هو كاتبه ده خالص ده زيه زي الاي دي وزي النيم انا هجنريت برض ليك انت فورين كي اسمه ديبارتمنت اي دي فتفتح المايجريشن تلاقي فيه ديبت اي دي
وديبارتمنت اي دي والمفتاح على مين الابيض على الديبارتمنت اي دي مش بتاعي خالص فتيجي تقوللي ده عمل اين فور كي هقولله اكيد في غلط فيراكشر بتاعه الجدول طب انا
عايزه اخلي الراجل ده هو اللي يبقى الفورين كي قاللك تيجي تريستريكت فوقيه كده وتفتح القوسين وتكتب فورين كي ده اللي انا بحبه اكتب انا الفورين كي واحطه في
الاتربيوت حتى لو هلتزم بالنيمن كونفنشن يعني حتى لو انا هلتزم واكتب ديبارتمنت اي دي عارفين لو انا التزمت بالكلمه صح هو لوحديه هيحط لك عليه
المفتاح لان هو كده كده هيروح يجينريت كولوم اسمه ديبارتمنت اي دي هيلاقيك حاطه هيقول لك خلاص حط عليه المفتاح بتاع الفورن كي بس ساعات بيفرق معاكم على حرف
ساعات كده ايه يعني مع اللي بياخدكم كتابه الكود تروح ناسي حرف كده اهو مثلا فكده هو هيروح يعمل بتاعه طب على ايه سهي علينا ما
سهيش علينا نروح نعمل له احنا الاتربيوت خليك انا احب نعمل له اللي مفروض سيبنا من هو يعمله توجينريت بيلبسنا في الحيط ما تجيش تقول ان في تو كلاسز ميني تو ميني
اروح هروح حاطه هنا ليسته وهروح حاطه هنا ليسته وخلصنا وهو الصح في الميجريشن هيعمل لك جدول في النص بس انت مش عارف تاكسسه مش هعرف اجيبه لازم عشان اوصل للريزلت لازم اجيب
الليسته بتاعه الطلبه مش منطقيه هو كل حاجه شغاله صح داتابيز بس انت هتتعب في الكود بتاع السي شار حلو الكلام طيب فانا بمشي صح طب هيقول
لك طب فورن كي اديني اسم البروبررتي اللي انا هبقى الفورن كي عليها بصوا باجي اروح واخده الكلمه السودا مش الكلمه الخضراء الخضراء دي تايب انا باخد اسم
الريفرنس او فيكم بيقول نيم اوف ماشي باخد اسم الاوبجكت او اسم الريفرنس وليس التايب طب افرض عندي ليه علاقه بجكت اروح
عامله اوبجكت منجكت واعمل ايدي واحط ماشي هيسهل علينا حاجات تانيه قدام
لا مش هتعمل خلاص ما هي مدام لقت ان الاوبجكت ده شايفه هنا انت كتبت اسم الاوبجكت لما لقيت ان انت عامله رابطه بحد هيقول خلاص ده هو عامل كستم فور مش عمل
بتاع تروح بتاعها ليه عشان انا كاتبه ده لو انا مش كاتبه هيبص
لو بنفس اسم عام بتاعته خلاص اي دي لان ما عندكش سي شار ما عندكش ببلك بوربرتي ده اذا كانت البروبرتي متعرفه برايفت مش هعرف اكسسها لو هي مش موجوده
اصلا صح حلو الكلام انا احب امشي كده احط اتربيوت نكتب الانجر واعمل الاوبجكت طيب
حلو الكلام في مشاكل مسكنا الليست هنا ومسكنا نا الاوبجكت هنا وحطينا الفرين كي ايه الخطوه اللي فاضله دلوقتي عملنا الكلاسز ونزلنا
الباكج في اهم كلاس ناسياه انا اللي هو ايه بكونكست ماشي يعني دي جداول عاديه
تروح فلازم اجي اروح عامله كلاس بتاعي اعمل عاديسميه اي تي اي
كونتكست ده كلاس عادي بس عشان ياخد ان كل بوررتي جوايا نوع دي بي ست تبقى جدول هورثه من مين؟ من الدي بي ست اللي انا
شفتها دي بكونتكست سوري اللي شفتها لما نزلت الباكدج طيب اي كلاس حضرتك عايزه يتحول الى جدول بحط له دي بي ست هنا او
بحط مثلا دي بي ست لواحد وهو بيروح الاستات اللي جواه يروح يعمل لها تيبلز بس نفس الفكره ان انت لو مش عامل دي بي ست يعني انا مش عارفه اكسس الموضوع هيبقى سخيف جدا فانا ققولله لا
انا والله عايزه اعمل بابلك برورتي للدي بي ست اوف كاتبينها غلط الاسم اللي انت هتكتبه هنا ده هيبقى
اسم الجدول الا اذا انت رحت عملت فلونت بي اي وغيرت اسم الجدول او حطيت اتربيوت فول كلاس وغيرت اسم الجدول يعني في حاجات اسمها ديفولت معنى ان في ديفولت يعني ممكن
اغيرها في طرق التانيه للتعديل فهو باي ديفولت الاسم اللي حضرتك هتكتبه هنا ده هيبقى اسم الجدول بتاع الامبلوي فانا هسميه امبلوي برض وهعمل دي بي ست تانيه هو
عارفين لو انا سكت على كده وهو هيروح للديفنشن بتاع الابلوي يروح يعمل لك تيبل حط الكولومز دي يلاقي فيه اوبجكت من الديبارتمنت يروح
مكريت لك تيبل للديبارتمنت ويربط لك الفورين كي بس انا ككونتكست ما عنديش البوربرتيز بتاعي فضطر ان انا ايه اعمل
الدي بي ست الثانيه بس المره دي بتاعه الديبارتمنت وهسميها ديبارتمنت طيب حلو الكلام في مشكله الى الان اه
امتى لا كان هيعمله عشان جوه الموظف في ديفينيشن بتاع برت لو ما فيش الفنيشن ده لا كان خلاص هيبقى الداتابيز بتاعتك ما فيهاش دي بي ست امبلوي وشغاله وكافيه
نفسها عملها بس انا مش شايفاها مش عارفه اكسسها مش عارف اجيب ماشي هيجينريت كلاس هيجينريت تيبلز سوري
والتيبل في الكولومز دي جربوها اعملوا اعملوا اكتر من كلاس في ريليشنز ما بينهم هو اساسا الديمو بتاع الكود فيرست بيبدا كده ان هو بيروح يعمل دي بي سيت واحده للديبارتمنت يروح عامل لك جنريت لكل
الكلاسز جواها مش ده اللي حصل امبارح هيحصل هيحصل لو جربتوه لا هيروح للديفينشن شايف هو دي
الفور كي لازم ياخد اسم كلاس اسم اوبجكت من كلاس فيروح للديشن بتاع البارتمنت ماشي ده كل حاجه من دي هتبقى هي
الكلبز بص لو انت ما حطيتش دي ركزوا كده معايا لو انت ما حطيتش دي وانت ما حطيتش دي خلاص كده هو الداتابيز بتاعتكفيش غيراني لا كان هيروح يروحشن بتاع الراجل
ده ويعملك اسمه اي دي ونيم ومانجر بس مش هيبقى ليك دي بي سيت هنا فانا مش هعرف اكسزه من السي شارب
مافيش كونتكست دوت مششوف غير كونتكست دوت انبلوي بس يعني عشان تحطه لازم تسكنه من خلال الامبلوي بقى جدا فزي بالضبط نفس فكره لو انت
ماعملتوش هو بيعملك انت ماحطشحطلك بس احنا مش هنبقى شايفين تكتب كود طويل عريض عشان اقدر سيسي ماشي
طيب نكمل دلوقتي دول هيتحولوا لداتابيز ايه الداتابيز وهتتحط على انهي سيرفر فين ازاي مش معلومات قاللك طب تعال
نتخيل لو انا دلوقتي قلتلك يا كريم افتحلنا الداي الخطوات اللي هتعملها هنا مش خطوات
عشانفتح انت عملتوها افتحها ازاي اول حاجه لازم اعمل اول حاجه هقول هي انت حاطط الداتابيز دي
على انهي دي بي ما اس صح ولا غلط داتابيز دي على اوريكال ولا ماي سيكوال ولا سيكوال مش سؤال منطقي جيت قلت لك افتح لي من على
جهازي الداتابيس بتاع كباني اول سؤال افتح السوفت وير ايه هقوللك الدي بي اس بتاع السيكوال سيرفر هتلاقيني بفتح السيكوال سيرفر صح السيكوال سيرفر ده ممكن يكون
عليه اكتر من سيرفر لي اسم يظهر لي الديالوج دخل لي والله اسم السيرفر ونوع الاوسنتيكيشن لان ممكن يكون
عندك اكت من يوزر صح ولا غلط يعني اول حاجه كده عملناها حددنا الدي ام اس الخطوه الثانيه الدي ام اس ده عليه سيرفرز كتيره
لما انتوا لو انتوا كنتوا بتدخلوا تنزلوا السيكوال غلط تلاقي يقول لك كل مره تنزله غلط يقول لك اديني نيم انستنس عشان هو بينزل سيرفيس فكل سيرفيس ليها اسم فتيجي
تفتح عندك انت لو انت نزلت غلط لو منزلها صح هتلاقي الدوت شغاله عندك تيجي تفتح الار دي تروح جايبه لك ليسته كده من اسامي السيرفرز اللي عندك
فيقول لك طيب اديني السيرفر نيم فانا عندي الدوت شغال شوف انت عند حضرتك ايه اللي بيشتغل الاسم اللي بتكتبه هنا ده هيبقى السيرفر نيم
بتاعك انا دوت مش لازم يكون شغال عندك انت دوت انا عشان منزله نيم انستانس واحد فبالتالي هو ما فرضش عليا اسم فاسمه بيبقى اسم الجهاز ماشي طيب بعد ما اخترت ده يقول
لك طب اديني نوع الاوثنتيكيشن شايفين كده وصلت لكما ستيب عشان اوصل للداتابيس لاثه مرفوع على انهي سيرفر اسم السيرفر اسم الانستنس اللي هتكونكت عليه
نوع الاوثنتيكيشن لو ويندوز اوسنتيكيشن خلاص يبقى طول ما انت قادر تفتح الويندوز فانت اورايزد يوزر ماشي طب لا انا مش عايزاه ادخليندوز قاللك في حاجه اسمها السيكوال
انستنس اديني بقى اسم السيكوال سيرفر اكونت والباسورد بتاعته فانا الحمد لله شغاله ويندوزنتكيشن وبيشتغل عندي طيب اول
ما اعمل كونكت يقوللك ايه ده على السيرفر ده اليوزر ده شايف داتابيز كتيره خالص انت عايز انهي
داتابيز يبقى كام معلومه لحد دلوقتي اربعه مرفوعه على ان دي بي ام اس اوفر الدي ام اس ده السيرفر نيم ايه على جهازك او على جهاز السيرفر اللي انت را
عليهس اسم الداتابيس والنوع الاكيشن طيب انا دلوقتي لما اجي اقولستي شار لو سمحتي روحي اتفضلي حوليلنا الكلاس دي الى
داتابيز وسكت هو عارف هيروح فين ازاي مين لس ده اذا كنت انا كبني ادم لما قلتلك افتحلي داتابيز على كزي قلت شويه الحاجات دي سي شارب هيعرف يعملها قاللك لا لازم
تديني شويه الحاجات اللي قالت عليهم كريستين دول الداتابيس ده هتجينريت اوفر ايه على اني سيرفر اللوج ايه واسم الداتابيز
عشان اعرف اكونكت الحاجات دي كلها بنبعتها فين؟ في الكونكشن سترينج للامانه كونكشن سترين كتابتها رخمه وكذا وكذا وكذا وكذا
فسقيله فانا بغشها منين؟ يا اما تجيبها من بروجكت قديم وتغير اسم الداتابيز ماشي يا كريم وتغش محمود مش وحش يعني ما دام انت
عارف تعدل فيه اتس اوكي او في حاجه لطيفه كده مايكروسوفت مديها لنا مع الفيجوال استوديو بيقول لك ايه بدل ما في اجهزتنا احنا بتتقل لما افتح الفيجوال استوديو وافتح السيكوال سيرفر فتلاقي في بعض
الاجهزه تروح يعني تلاقيها ايه ماشيه بالزق كده بس انا ببقى عايز السيكوال عشان اشوف الداتابيس اشوف التيبلز واشوف الكوم والحاجات الحلوه اللي فيها فببقى عايزه
افتح السيكوال وعايزه افتح السي شارديو فراحت مايكروسوفت عملتلنا على جنب بسيستعرض عملت لنا اكسبلور اسمه سيرفر اكسبلور يعني
بيفتح لك الداتابيز اللي مرفوعه على السيكوال على جنب بحيث ان انت ايه ما تفتحش السيكوال والفيجوال استوديو فالجهاز يبقى تقيل وانت لو فاتح بقى البراوزر ولا
فاتح ميديا بلاير وقاعد بتسمع حاجه فتلاقي الجهاز يعني ايه البروس البروسيسور بتاعه بيصرخ فراحوا قالوا لك ايه احنا كفيجوال استوديو عاملين لك كده اكسبلور يستعرض
الداتابيزسز بتاعه السيكوال بس مش بنستعرض كل الداتايز انت بتكونكت على داتابيز بعينها طب انا لازم اكونكت عليها لا مش
لازم ده عشان انت بس عايز تنافيجيت على داتابيس ومكسل تفتح السيك اجيبه منين السيرفر اكسبلور يا شباب من شاشه الفيو افتح
الفيو الميو بتاع الفيو هتلاقي في واحده منها اسمها سيرفر زي بعض ماشي فانافتح السيرفرور اهو دي كلها داتا بيزز كانت مرفوعه على
السيكو اللي انا فتحتها لوقت معين وما كنتش محتاجاها تاني فبعدت وقت معين هو بيفصل الكونكشن من هنا لانه عم لها دروب طيب انا عايزه دلوقتي يا يا رويده معايا
يا ماما تكتبي لي على المجه نكتب على الورق ماشي مش على المد بيتصل باجي على الداتا كونكشن هنا واقول له عندكم انتوا لو فتحتوا ده هتلاقوا كل
الحاجات دي فاضيه هتلاقي داتا كونكشنز وسيرفرز ماشي فانا عايزه دلوقتي كونكشن على السيك فبكونكت ازاي باجي هنا
واقول كليك يمين عايزه اد كونكشن يقوللك طيب لو انت فاتحها اول مره هيقوللك ايه عايزها بانهي استخدام دي
بماس انا دلوقتي مش منزلك اكسبرس ومش عايزه اكونكت على اكسل مش عايزه اكونكت على سيكوال على اوريكال انا عايزه اكونكت على مين سيكوال سيرفر انا منزله سيكوال
سيرفر فول فيرجن فهقول له طب انا عايزه اشتغل على ده طب لازم اعمل الخطوات دي يا كريستين لا بامانه بغلاوتكم عندي ما لازم اعملها دي بعملها بس عشان اوريكم ان انا
ممكن افتح الفيجوال استوديو افتح الفيوديو جواه اكسس داتابيز مرفوعه على الس وبالمره نغش منهاش لكن لازم ابقى عام الخطوات دي
لا ماشيقولك انت دلوقتي اكتبلي نفس الخطوات اللي قلناها انا عندي شغال لو انا مش فاكره حضرتك اكسباند الارو ده
هيحاول يكونكت مع السيرفر السيكوال سيرفر ويجيبلك الكونكتد سيرفر لو انت مش عارف انا بحط الدوت هتشتغل طيب بعد كده طب
اديني نوعشنقولله ايه انا عايزاها ويندوز يقولك طيب حضرتك تحب نخليشنقولله لا خليها
للامانهشنا دايما نقولك شن فولس ماشي بعد كده هقولله تراست سيرفر سيرتفيكيت هقولله تراست اي حد هيعمل
كونكشن تراست الراجل ده لو الاوبشنز دي خاطئه او فيها حاجه غلط مش هيفتح الدروب داون ليست اللي تحت هيقوللك مافيش داتابيز لو فتح الداتا بيزسز كده يبقى هو عارف يعمل
كونكشن ماشي طيب انا هغش اي داتابيس واعمل تست كونكشن فيروح يجينريت ليك هنا المنت الداتابيسزس دي مرفوعه على
السيكوال انا بس عملت عليها الشورت هاند كونكشن كده هفتحها تفتح معاك التيبلز وتقدر تفتح التيبلز وتشو داتا زي ما انت
عايز طب انا هشتغل على الاكزام دلوقتي لا انا هقف عليها كده واعمل كليك يمين بروبرتيز تجيب لك الكونكشن سترينج تروح واخدها كده وتغير اسمها باسم داتا بيز
اللي هنعملها مع بعض وبعد كده ممكن تعمل نفس الخطوات على الداتا بايز اللي احنا هنعملها وتفتحها وتشوفها وتشوف الداتا اتسيفت ماتسيفتش براحتك طيب هبعت الكونكشن سترنج فين يا
شباب؟ لون كونفيجر طب ليه هنبعتها في لون كونفيجر؟ قال لك اصل احنا لما رحنا للبيرنت كلاس لقيناه بيقول ايه؟ الراجل
ده مش بياخد الكونكشن سترينج في الكونستراكتور ليه؟ قال لك لا احنا هنلتزم فاكرين البيلدر اللي قلنا ويبليكيشن بيلدر
ده بيبلد و ابلكيشن الكار بيلدر بيعمل كار اللاب توب بيلدر بيبلد لاب توب هنا قاللك الحاجات اللي انت بتكتبها في الكونكشن
سترنج انا باخدها كاوبشنز بس مش باخدها از سترنج لا ده انا عامل لك كونتكست اوبشنز
لدر فالبلدر ده يوم ما يبلد هيبلد ايه الكونكشنونكست اوبشن اللي هي فيها اسم السيرفر اسم الداتابيس نوعشن طب بتاخد
البلدر ده فين قاللك في مكانين المكان الاول اللي هو الكونستكتور اهو لو جينا عملنا بحث على الدي بيك ونفتح
قوس بص هتلاقيه يقوللك ايه انا باخد الديكونكست اوبشن طب مين اللي هيجيبها لك البلدر طب البلدر ده هتجيبه منين يا حاج
قاللك بص انا هروح اجيبه من مود اسمها اون كونفيجر فلو سمحت روح اعمل اوفررا على الم اسمها كونفيجر طب ليه لو رحناشن بتاع
كونفيجر انت عارفينهالاخدها اسمها اهو بصوا هتاخد ايه دي بي كونتكست اوبشنز لدر فتروح
تعمللكشن وتديهم للكونستراكتور تمام بس انا دلوقتي لو عملت كونكتور
مشح ولا غلطفينزل عندك كدهجهز بديفولت كونستراكتور لو جيت انت عملت بارامتر كونستراكتور بيلغي الديفولت خلاص مافيش
حاجه اسمها بارامتر لس كونستراكتور فراحت مايكروسوفت قالتلك ايه قالتلك بص هو الموضوع في البدايه بيبقى صعب يعني احنا ايه لسه الفلوبرز باديين فمش هيعرفوا يبلدوا الاوبشنز دول هم
يبصوها لي في الكونفيجر وانا اظبط الاوبشنز وانا ابعتهم عادي طب هتبعتيهم ازاي يا ست الكل قالت لك انا هعمل لك كونستراكتور ديفولت كونستراكتور اسمه دي بي
كونتكست هو من جواه بيعمل ايه يا شباب؟ مش ده تشينين بيتشين على الكونستراكتور التاني اللي بياخد الاوبشنز طب الديفولت كونستراكتور ده هيجيب ازاي الاوبشنز؟ قال
لك هو مش هيجيب للامان ده حد كده اهبل خالص ده هو كل اللي بيعمله بيروح يدور على مين؟ يدور على الاوم كونفيجر ميثود يقول لها شوف البلدر بتاعك ازاي بيبلد الاوبشنز
وينده البلد يروح يدي له الاوبشنز وبالتالي لو حضرتك ما عملتش الاون كونفيجر وجينا نعمل الاون نعمل مايجريشن يقول لك ايه لا يا باشمهندس ما ينفعش لازم تعمل لي
الكونفيجريشن اهو بصوا انا ما عملتش اي حاجه هاجي هنا اقول له ايه لو سمحت اعمل لي اد مايجريشن واسميها ان يديك اكسبشن حلو كده
يقوللك ايه انت لا عامل انجكت ولا عامل اوفررايد على كونفيجر يخيبك هعمل الكونكشن منين مايعرفش يجيب الكونكشن فبص اهو
هيقولك لو سمحت انت مش عامل اوفررايت علىجر وانا من جوايا بنده البلدر بتاعه بقول لها اعملي لد يوز الاون كونفيجر
فبعرف الاوبشن فانت لا انت بعتهم بالطريقه اللي هناخدها باليوم الثامن ولا انت عامل اوفر رايد للاون كونفيجر طب اعمل ايه دلوقتي لسه اليوم الثامن ده احنا في اليوم التاني فانا مش
عارفه ازاي اعمل انجكت انا الحل اللي عندي دلوقتي ان انا ابعته ازاي اعمل كونستراكتور عشان اعمل التشينين
واروح في الاون كونفيجر ابعت له الاوبشنز فهو غصب عني لازم انا دلوقتي اعمل ايه؟ اعمل في اليوم الثاني لحد اليوم السابع هنوفررايد الميثود ده بعد كده ان شاء الله
هنستخدم السيرفيس بروفايدر في اليوم الثاني طيب يعني انا دلوقتي ما عنديش باليد حيله اه هنيجي هنا نقول له لو سمحت احنا عايزين اوفر رايت هي متعرفه فيرجوال
اون كونفيجر وبياخد البلدر انا بقى هدي البلدر ده الكونكشن سترينج الخطوات بتاعتنا هقول له بص يا
اوبشن بيلدر وانت بتبلد ان شاء الله دي بكونتكست اوبشنز احنا بنستخدم السيكوال سيرفر يعرف ان هو هيفتح الدي بي ام اس بتاع السيكوال سيرفر اهو احنا بنيوز
السيكوال سيرفر دي اول خطوه احنا عملناها صح اني فتحت السيكوال سيرفر هيقول لك طيب اوفر
السيكوال سيرفر انا عايز اسم السيرفر نيم وعايز اسم الداتابيس وعايز الاثنتكيشن هقول له طب هتاخدهم ازاي يقوللك اديهمني از سترينج عادي ماشي انا كنت اخدت حتها
كوبي اقول له اتفضل خدها فيها ايه بصوا اسم السيرفر يعني هو كده كانه فتح السيكوال سيرفر اسم السيرفر
دوت الانيشيال كتالوج اسم الداتابيس بتاعتنا لا احنا هنغيرها احنا هنسميها ايه هنسميها اسيوت دوت
نت كوارتر 3 ده اسم الداتابيز بتاعتنا طيب يبقى هو كده فتح السيكوال وعارف اسم الداتا اسم
السيكوال سيرفر سيرفر نيم وعارف اسم الداتابيس فاضله ايه كده اللوج ماشي قالله لا انتجريت سكيورتي
بترو ده هو لوجن بيوز الويندوزكيشن اخر حاجه انكربشن بفولس وتراستد سيرتفيكيت بترو على اساس ان هو ايه هو تراستد
الكونكشن دي خلاص كده خلصنا اه استاذنكم بس ان احنا هنعمل الديفولت كونستراكتور عشان قدام شويه هنعمل باراميتر ليس كونست
باراميتر كونستراكتور فانا مش عايز عايز افقد الديفولت كونستراكتور وهقول له بعد اذنك انا مش هعمل تشينين على كونستراكتور عندي انا هتشين على بتاع البيرنت اللي هو
اساسا بيتشين على ايه؟ على اللي بياخد دي بكونتكست اوبشنز ماشي ده بنعمله ليه؟ الى الان هو
مالوش لازمه لان انا ما عنديش غيره بس في اليوم الثامن هعمل البارامتر كونستراكتور فهيلغي الدفان انا مش عايزه الغيه ماشي فانا
هخليه هنا عشان ان كيس عملت اوفرلود ماشي للكونستراكتور مابقاش عندي الباراميتر ليست متشال افضل بعمله سبورت حلو الكلام دلوقتي لو عملنا مايجريشن
هيشتغل ولا ما يشتغلش ان شاء الله باذن الله هيشتغل ماشي يعني من غير عكوسات كده نقول له طب ارجع اعمل مايجريشن
تاني بص بقى هو بص ليه ان المايجريشنز ان في جداول بتتكريت فتروح تلاقيه عمل لك تو ميثود واحده اسمها اب وواحده اسمها داون ايه الفرق ما
بينهم؟ لو جيت اعمل ابديت داتابيز ينفذ الاب لو انا ما عملتش ابديت داتابيز وعايز ارجع في المايجريشن دي بعمل ريموف
مايجريشن يروح ينفذ الدوا بس ريموف مايجريشن لازم ماكونش لسه عملت ابديت داتابيز لو انت عملت ابديت داتا بايز وقلت له ريموف مايجريشن هيقول لك مافيش
مايجريشن عشان ارجع فيها الدنيا زي الفل ماشي طيب فهتلاقي في الاب دلوقتي كارت جدول وتلاقي في الداون اعمل ايه العكس
امسح الجدول بصوا كده معايا هتلاقي هنا في اتنين كريت كريت جدول ديبارتمنت وكريت جدول امبلوي في الداون هتروح تلاقيه يقوللك ايه
دروب جدول اسمه انبلوي دروب جدول اسمه ديبارتمنت اهو حس انك لو عايز ترجع في القرار هنا حط هنا امسح طيب تعالوا نبص على الحاجات اللي
احنا عملناها احنا كنا عايزين نخلي بعض الحاجات نل طلب ماشي بصوا كده لو جينا فتحنا الديبارتمنت هتلاقي في الديبارتمنت يقول لك ايه الاي دي لما الاي اسمه اي دي راح
قاللك هو انجر ونلب بفولس لان احنا مخلينها مش نبل انجر خليها انجر وهيسكللك عليها ايدنتي تستار وز وان وكرمنت باي
ونيم هيبقى سترينج هو كان نوع سترينج خليها ان فار ماكس ومش نبل نبل بفولس لان انا مش حاطه قس مار جه عند المانجر نيم
راح قاللك هو برض ماكس بس نبرو ليه عشان وانا بحطه كبررتي حطيت الكويشن مارك لا مش هيقوللك مافيش هيجي يران هيقول لك ما ينفعش البرايمري كيبقى بنل يرميلك
كونسترين ايرور في المايجريشن ماشي هو في السيكوال كان ينفع اخلي برايمري كيو نال كده بقى يونيك مابقاش برايمري كي ماشي طيب الخطوه اللي
بعد كده قال لك انا لاحظت لما جيت اكارت جدول ديبارتمنت ان في كونسترين ايه هو ان الاي دي يبقى برايمري كي او اسم الكولوم بتاعك اللي انت هتحط فوقيه اتربيوت كي
الخطوه اللي بعد كده قاللك احنا هنكاريت جدول تاني اسمه امبلوي ايه الكولومز اللي فيه الاي دي والنيم والسلري والجوب تايتل
انا ممكن اخلي دلوقتي الادرس يبقى نلبول ماشي واروح اخليه هناك يبقى في كويسشن مارك
الادرس ماشي طيب بصوا كده كل الحاجات هو راح عملها بالتايب اللي ينفع ليها كده انا في الكلاس بتاع الامبلويا عندي كام كونسترين في ككم كونسترين واحد ولا اثنين
الله ينورك البرايمري كي عشان الجدول ده لازم يكون ليه اندكس برايمري كي والفورن كي عشان انا حاطه الاتربيوت بتاع الفورين كي وجوايا اوبجكت اصلا فبص ده اللي عمله
قال لك احنا لاحظنا ان بعد ما عملنا الجدول ده كله ان في برايمري كي محطوط على الاي دي وفي فورن كي محطوط على الراجل ده
مين قال لك جوه الامبلوي في كولوم اسمه ديبارتمنت اي دي ده لو انت ما كانش عندك بوربرتي بالاسم ده كان هو هيعمله تو جينريت بس طول ما انت حاطت الاتربيوت هو
ديتكتد ان البروبرتي دي بتاعه الراجل ده ماشي طب هي هتترابط بمين ايه الريفرنس بتاعها ما احنا بنيجي نعمل فورين كي بقول له ده الفورين بس لازم يكون له برايمري في
جدول تاني هو بيقول له الجدول التاني اني هو الديبارتمنت اللي عنده برايمري اي دي طيب وجاي تحت بيقوللك اون ديليت كاسكي يعني ايه اون ديليت كاسكي يعني لو جه
لغديبارتمنت تمسح الموظف ده مش بنسمح بيه ليه تخيل معايا لو في طالب عنده درجات لو الطالب ده رفدناه
ومشى هل ينفع امسح درجاته اوندريد كاسكيت يقول له امسح درجاته يا عم ما خلاص ما انت مسحته ممكن اه مدام اتمسح وحاجاته ويك
انتد يعني ايه مرتبطين ارتباط جامد ده يعني اب مع ابنه انا دلوقتي ككريستي وعايزه اخزن بيانات عيالي دول عيالي انا
لو انا مشيت عيالي هيروحوا عند مين اكيد مش هنقولهم عند حد تاني او مش هروح اقولهم ما لهمش اب وام لا ما هم عيالي ده الويك
انتتي تمسح السترونج وتبقى عيالها لكن حاجه زي هنا موظفين في ديبارتمنتمنت كنا فاتحين دلوقتي احنا متعينين على الوزاره
مثبتين جم قفلوا بعد الشر يعني قفلوا المعه مش عشاني والله ده عشان الشباب قفلوا المعهد وانا متسب افضل انا على حس الوزاره ان انا في
ديبارتمنت ا يروحوا يمسحوني اصلا هل ده منطق لا ولا يولي الديبارتمنت ديبارتمنت روحي بقى سلي انت
حبانا واحنا حابينك روحي بقى اشتغلي في القاهره روح انا اقدم استقاله ما شاع انا اللي شلت نفسي طيب فقلت ريت كاسك يقول
لك ايه خلي بالك ان لو البرايمري تيجي اتمسح ويه فورن انسح الف منطقي طالب مشى مسحنا له درجات ورفع علينا قضيه لا انا
كنت ناجح يا عم ده هم بيتبلوا عليا نروح للداتابيز بورد واحد دي اللي هي المسح فدايما يقوللك على حسب السيستم زي مثلا
جيت عملت سيستم وخلصت ففي اوردر بالغلط الطلب عادي انسان طبيعي طلب اوردر عادي من السيستم وطل بس
جه الشاب راح قال ان الاوردر ده اتلغى طب الاوردر دلوقتي اتلغى الراجل اتصل قال يا جماعه الاوردر اتاخ ساعه دي
ساعه ماجاش قالدر رقمه كام قال كذا بصوش مسحت بدل ما يقول عايز ارجع بتاع شكلها مش حلو
اقوللهمسحسح ايه ابتدي نعمل الكمبيوتر ده الداتا اللي اتمسحت عملها ترانكيت
خلاصش ترجع فقاللك حضرتك بلاش حته ان انت تدل على طول الشهامه بتاعك كل حاجهعمل حاجه
اسمها اديله بتاعها انت بتضيفه هو فول بس يوم ما يمسحه
اقولله عايز اعرض كلمت اقولله اعرض كلمت بتاعتهم ممسوح بس هو ممسوح دي اول حاجه لازم نراعيها
فيستاني حاجه لما تكون في ريشن زي دي لما تيجي ترسح برايمري الفورس عادي وانا كديفلوب اخد القرار الناس دي امسحها او اروحلها في
ديبارتمنتاني او اسبلاش فنلف كده عليهم غير ايه كده كمان ايه ساعات احنا لما بنيجي نعمل دي على السيستمز الكبيره فتلاقي ايه الانتي دي متوصله بديتي دي متوصله بدي ودي متوصله
بدي فالبرايمري كي ده جاي يتمسح هيمسح الفورن اللي هنا اللي هو اصلا ليه فورن هنا اللي هو اصلا ليه فورن يقوللك انت دخلت في سايكل يا باشمهندس انا مش عارفه اعمل
مايجريشن ماشي فطبيعي ان انا لما باجي هنا ودي اللي هتقابلكم في الاسايمت جداول مربطه ببعض فلو سبتهم على اصلهم اون ديليت كاسكيت هيقول لك انا مش قادر اعمل
مايجريشن العلاقه اللي اسمها فورين كي امبلوي ديبارتمنت ديبارتمنت داخله في سايكل لان دي هتمسح دي فدي لما هتتمسح
الواد ده ليه درجات ده لما يتعمل ده اصلا كان مانجر على الديبارت فهو مش عارف يبدا بدا منين البيضه ولا الفرخه همسح مين الاول فانا طبيعي دلوقتي على حسب البزنس
لوجيك هنعمل سوفت ديليت ولا لا فما فيش ديليت مفروض ده هيبقى ابديت بس في صيغه ديليت ماشي واجي اقول له هنا لما تيجي
تمسح نو اكشن يعني ايه نو اكشن يعني ما تمسحليش عيالك جاي تمسح ديبارت ما تمسحش الموظفين مش نافع تمسحه عشان ليه موظفين هيرمي اكسبشن صح ما انت لو جيت ترمي تمسح
برايمري كيلي فورين هيرمي اكسبشن ارمي للديفوربري اكسبشن ما احنا عندنا تراي وكاتش تيجي في الكاتش تشوف بقى الموضوع ده
ازاي انقولهم امسحهم او ابديت فساعتها القرار هيبقى واخده الديفلوبر مش السيك ماشي فانا هلف كده على الريليشنز واقول له
ان ديليت نو اكشن انت مش مطالب تهاندل الاكسبشن ده حلو الكلام طيب خلصت كده الداتا بيز وزي العسل وهو راح عمل لي اندكسرز هنا هاجي اقول له لو سمحت اعمل
ابديت للداتا بيس وهنا يبدا يتفعل الكونسترين الحاجات اللي هتنفع تطبق ككونسترين تمشي
واللي مش هينفع هيديك اكسبشن بالاحمر هنا تمام اول ما يقوللك ابلاي مايجريشن تمام نيجي نرفش هنا اهو المفروض نلاقي في داتايز اسمها اسود كوارتر 3 ايه اللي فيها
الجدولين بتوعنا ماشي اللي هما الامبلوي وهنلاقي عنده مفتاحين المفتاح بتاع البرايمري كي والمفتاح بتاع الفورين ما عمليش اتنين
ديبارتمنت اي دي اهو لان انا عملت انا عايزه حاجتي سيبك من الاوتو جنريت خلاص طيب الخطوه اللي بعد كده ادي الديبارتمنت ما عندوش غير الاي دي
والمانجر بن طيب احنا دلوقتي عايزين نعمل ايه ندخل بعض البيانات في البارتمنت خلي بالك انا عايزه ادخل بيانات مارحش ادخل
الاول صح يا كريم ليه مادخلش الاولتمنت عشان زي امبارح ماشي هو مستني فورن كي مش الفورين لازم ليه
برايمري عاوز فورين كي هنا في الديبارتمنت اي دي وانا لسه ما انشاتش ديبارتمنت تخيل معايا دلوقتي على السيستم مافيش اي ديبارتمنت وانا عايزه احط موظفين هيجي
يقوللك في اي ديبارتمنت هقول له ديبارتمنت واحد يرجع هو في ديبارتمنت واحد ماشي ده اولا ثانيا لما بتيجي انت تخطئ في ادخال الريكوردز بتاعه الامبلوي
هو بيسحب من الايدنتيتي فما تجيش في اللاب تقول لي ايه معايا يا كريم انت شاغل بالي يا ابني معايا امال ليه بص في الموبايل سامعني
طيب في اي كونتاكت خليك معايا المفروض دلوقتي مع كل غلطه بتغلطها وانت بتانسيرت هو بيسحب من الايدنتتي فهو
تروح تلاقيه واحد ا 10 ما تقوليش ليه حط 10 ما حطش لاثه ب هقول لك انت غلطت وانت بتدخل غلطت سبع مرات تقول لي اه والله ده انا ما كنتش عارف عنه فهو هو دي مشكله
الايدنتي فطبيعي ان شاء الله لما نيجي نعمل سيستم ما تعرضليش الاي دي عشان يبقى واحد انين 10 فبنعمل زي سيريال نمبر ده مش
الاي دي لان الراجل مش زمبو يشوف واحد 10 شوف واح ان ت ا حلو الكلام طيب فالاي دي ده احنا عاملينه ايدفاير عشان يبقى بس اندكس للداتا بتاعتي فلما اجي اسلكت يبقى
سريع حلو الكلام طيب فبص دلوقتي اكيد مش ددخل موظف من غير ديبارتمنت فرووح الاول اسكن البرايمري وبعد كده اروح مسكنه الفورين كي فانا هسكن
دلوقتي اول برايمري مش هدخل اي دي لان هو مش بير يدخل اي دي هقول له اس دي المانجر احمد اول ما ادوس انتر واداتها صح اداك
رقم انا مش عايزه اخطا ان شاء الله اوبن سورس وهيبقى محمد عايزين ديجيتال ماركتن وهيبقى مين
علي حلو كده لاثه ديبارتمنت اهو عندي كم برايمري كي في الديبارتمنت لاثه ما اروحش اسكن موظف شغال في ديبارتمنت اربعه صح ولا
غلط امال هو ايه فايده الكونسترين بتاع الفورين كي انك ما ينفعش تحطلي فورين مالوش برايمري عشان كده اسمه كونسترين انت لو ما عملتش كونسترين هتسكن
اي حاجه في اي حاجه والدنيا تبقى زي الفل طيب جيتكن موظف نحط كده مثلا منار السريك
انت الامج بدل ما كنت بسكنهم ستاتيك داتا بدخلهم بايدي دلوقتي ماشي الديبارتمنت اكتب ديبارتمنت موجود
دخل زي الفل والراجل الراجل مش مستقصدك على فكره هو ما يعرفكش عشان تقول مش راضي
يسيب ده نوايا بقى ماشي صف النيه هتلاقي ايه رويده نديها 200 اهو ونخليها فرونت
اند ماشي وعايزين ولد لا ازاي لا ازاي يعني نحط ولاد لازم
عشان ما تقولوش انت بتستعنيدي الولاد تتحيزي للبنات نحط اهو في خالد اياد
اهو اياد لا اياد هيشتغل فول ستاك يلا يا عم احنا ما نستخسرش حاجه في عيال اللي عايز حاجه
خالص يلا حلو كده الكلام ضفنا لاثه ديبارتمنت ضفنا لاث موظفين في ديبارت طيب احنا بقى ده كله ده كان شغل ايه فريمورك مالناش دعوه بيه خالص احنا عايزين بقى
دلوقتي نعمل فيو انا عايزه اعمل صفحه استعرض فيها كلمت اعملها ازاي قول يا يوسف في سؤال لسه
ده ولا المايجريشن؟ اه على فكره ما ينفعش اسمي اين مايجريشن بنفس الاسم لان ده كلاس بيتكريت كل ماجريشن باسم ده حصلله اوتوينريت لما
عملنا اد مايجريشن فبص على الداتابيز وبص على الكلاس وشاف ايه الاختلاف ما بينهم وعملك الكلاس ماشي كان ينفع بس انا مكسل الصراحه يعني
كان ينفع طبعا ان انا اجينريت وقبل ما احط الداتا اروح اغير واعمل اد مايجريشن تاني مافيش مشاكل عادي يعكس العكس هو اللي ما ينفعش يعني انا حاطه داتا في الداتابيز والكولوم
فيه داتا وقلت لله بيو نال معنى كده ان اللي جاي ممكن يحط فيه نال لكن العكس لو هو فيه نال في داتا في الداتا بيس فيها نال وانا قلت له الكولم
ده مش هيقلا نال ساعتها مش هيرضى يسيب يقوللك اعمل ايه في القديم ماشي يعني عادي خالص لو انا جيت وغيرت وقلتله اعمل ادجريشن يغير معاك عادي
شوف ايه اخر سناب شوبشوف ايه التعديل ويعملك بدل ما نروح ونيجي اكتر من هتعمل ابديت هيابديت الاخراني هيبديت كله
كده ويروح طالع بيهم هي ابديت الهيستوري بتاعتك ماشي طيب في مشاكل كده طيب احنا دلوقتي اللي
احنا عايزينه نعمل ايه عايزه اعمل صفحه تعرض لي كل الديبارتنت اعملها ازاي دي ابدا في ان في سي ابداها ازاي
ما حدش بيبدا بصفحه هو اه الراجل عايز صفحه بس انا بعمل ايه اكشن واروح احطه في كنترولر مالقيتوش كنترولر اعمله فهو دلوقتي عايز ديبارتمنت احطه فين احطه مع
الهوم قاللك لا وخلي كل واحد كل كنترول يبقى هو ماسك كل الصفحات
بتاح عايزه كنترول ده شغل بقى الام في سي هنا اهو وهنسميه ام في سي امبيتي هنشيل نمبر 1 خلاص واجي اقول له
ايه هنسميه ديبارتمنت ولازم اسمه اند وس كلمه كنترولر ما تمسحهاش وتكتبها انت بتنسى حروف ماشي هيديني كلاس موجود في النيم سبيس بتاع
الكنترولر بيورث من الكنترولر اعمل فيه اللي انت عايزه انا هعمل صفحه اسمها اندكس بتعمل ايه بتجيب كل الموظفين بيني وبينكم المفروض نعمل زنس لاير ماشي فاحنا بس انا دلوقتي هتعامل مع
الكونتكست على طول هقول اي تي اي كونتكست طب ليه عرفتيه بره الفانكشن لان خلاص موست اوف اكشنز هنا هتستخدم بالكونتكست فبدل ما
اروح اعرفها جوه كل واحده هعرفها عند ايه من بره واكتب كونتكست ايكوال نيو عادي خالص ما ده واجي في الاندكس اقول لها
ايه لو سمحتي انا عايزه ليسته من الديبارتمنت ماشي بس مش عايزه اعمل لها نيو انا عايزه اعمل ايه اجيب اجيبها
منين؟ من الكونتكست شغل امبارح بقى دوت ديبارتمنت دوت تو ليست طيب حلو الكلام وزي العسل طيب ده موديل دلوقتي انا هقول لها
هتروحي لفيو لازم اسمي الفيو بنفس اسم الاكشن لا بس انا هسميهم بنفس الاكشن وهقول لها هبعت لك ما انساش هبعت والا هتبعت لها نال هبعت لها ايه
دلوقتي ليسته من الديبارتمنت انا بعتها لك اوفه فيها ليسته من
الديبارتمنت حلو خلصنا كده لو عملت ران هيشتغل هيران يروح للاكشن يظبط الداتا من الموديل يبعتها للفيو يقول لك لا والله
انت نسيت تبعت الفيو انت مش فاتح ما عملتش الفيو هيدور على الفيو
فين يا اما مافيش في الهوم فيوز ديبارتمنت ماليهاش فيوز شير طيب انا مش مكريته اصلا فولدر للديبارتمنت روح كاريته ولا ايه؟ مش
عايزين نقلق لا خالص تقف في قلب الاكشن كليك يمين في قلب الاكشن كليك يمين اد فيو احنا يعني في المرات اللي فاتت كنا بنختار
الريزرف فيو العاديه دي الامبتي فكان بيديك كومنت واحنا اول حاجه بنعملها بنشيلها النهارده تعالوا نجرب الريزرفيو اللي تحت الريزرف فيو دي فيها شويه فيها
شويه ويزارد اللي احنا بنطلق عليها اسم في في الانفي سيس كفولدين يعني كود بيحصله اوتو جينريت ايه هو اخرها بتديك تايتل بطريقه احنا مش عارفينها ازاي بس بتغير لك
التايتل وبتسجست عليك ان اسم الفيو يبقى بنفس اسم الاكشن اللي انت عملت عليه كليك يمين فانا لما عملت كليك يمين على اكشن اسمه اندكس فهي هتقترح مجرد اقتراح مش
اجباري نخلي لك الفيو بنفس اسم الاكشن اندكس وانت عايز تغيره غيره باقي الحاجات اللي هتظهر من تحت دي اتباعا احنا هنعملها بصوا تقول لك انا لاحظت انك لما عملت كليك
يمين كنت واقف على اكشن اسمه اسمه اندكس فانا بقترح انك تخلي الفيو بنفس الاسم بس ينفع اغيرها عادي لا انا خليها ماشي مافيش مشاكل في
حاجه تانيه هنعوز نغيرها دي الى الان لا ونعمل اد يا شباب عشان هي بتعمل جزء من الاسكافولدين فبتنزل باكج احنا مختارين
اقل حاجه هي بتعملها بس لازملها الباكج فهتعوز انترنت لو ما عندكش انترنت الباكج مش هتنزل فهتلاقيها
طلعتلك ماشي فهي اول مره بس تختار الاوبشن ده بينزل الباكدج مع الانتيتي فريم وورك في الديبندنسي اهو تمام اهي هتلاقي في تو باكجز بتاع الانتيتي فريم وورك وهي نزلت
لاثه تانيه عشان تجينريت الريزرفو بص وهي بتقترح عليك التايتل بشكل غريب كده انه يبقى اندكس ممكن حضرتك تغيره عادي هكتب مثلا ديبت
ديبارتمنت ليست مثلا او اندكس ما فيش مشاكل غيرتها وهتلاقيها تسمع في التايتل بشكل غريب طيب الصفحه دي هتعرض كل الديبارتمنتس هل اشتغل لوسلي تايب ولا
سترونج تايب بص دلوقتي هي دلوقتي وارسالك البروبرتي دي نوعها ايه المفروض ان هي نوعها داناميك لا هقول لها لا انا عايزه اشتغل سترونج اشتغل ازاي
سترونج الموديل سمول والتايب دلوقتي ايه لسه من عشان كده اقول لك تخلص الاكشن تروح تجري تعمل الفيو بتاعتها ما تقولش
اخلص الباك على طول وبعد كده اروح على الفرونت هتنسى مين بيبعت ايه؟ ماشي ديبارتمنت هو متنح مش راض يعمل اوتو
كومبليت ما تقلقش نعمل بلت ممكن نقفلها ونفتحها تاني تقفل وتفتح ترجع لك زي الاول ما كانتش راضيه تكمل معايا ومش عارفه اللي كاتباه صح ولا غلط اقفلها
وارجع افتحها ثاني تبقى وزي الفل ولو جينا عملنا ات موديل هنا هتقول لك والله ده انت وارث من ريزور بيج اوف ليست اوف ديبارتمنت فاللي جايه لك ليسته من الديبارتمنت
نعملها ازاي عادي خالص بتيبل وندي له شويه الكلاسزس بتاعه البوت ستراك طيب في البدايه عشان المره اللي فات فاتت ما عملتش هيدر للتيبل فكلكم ما
عملتوش هيدر للتيبل ماشي عملتوا لا اخجلتم طوال الله لا وابتديتوا كمان تنوعوا يعني ابتديتوا
تسيبوا البصمه بتاعتكم ليه اللي ما عملش ما فيش جدول اسمه بيدخل على الداتا على طول صح مش احنا اتفقنا كده في اتش تي ام ال يعني ايه عارض لي جريد انا مش عارفه ده اسم الواد الفول نيم ولا الفيرست نيم ولا
لاست نيم لازم الجدول يبقى له هيدر ماشي فانا بعمل الاول تي ار عاديه بتعرض للمسميات ده مثلا هيبقى النمبر بتاع
الوايب ده هيبقى كلمات مش اكتر ماشي واجي تحت هنا اعمل فور اتش ماشي واقول له انت هتلف على الموديل
وبعد كده ده اللي بيعرض الداتا بقى هفتح تي ار واقول له تي دي وهنعرض ات ايتم دوت اي
دي وهعرض هنا تي دي ات ايتم دوت هتعرضي المانجر لا خليه بقى للديتيلز ولا كده طيب حلو الكلام كده لو جينا عملنا كنترول اف
خعمل سلاش ديبارت سلاش اندكس روح نا الاكشن اكشن تجيب الداتا من الداتاب باستخدام الموديل وانت تروح بعتها من الاكشن
للفيوض لو جينا كدهشارتش اندكس اهو جت وهوفر جميله جدا احب انوه عن حاجه ركز
معايا لو انا جيت حطيت بريك بوينت هنا ركزي في واحد يقوللك انا عايز اعرض عدد الموظفين اللي في البارتمنت ده فيجي في
الفرونت يقوللك ايتم دو امبس دوت كونت طب تعالوا نشوف احنا عارفين ان كل ديبارتمنت في موظف صح يعني كانوا لاثه
ديبارتمنت بثلاث موظفين هعمل سلاش ديبارتمنت سلاش اندكس بص معايا الديبارتمنت ليست دي هتيجي ازاي رغم ان
انا عارفه ان كل ديبارتمنت جواه موظف الا ان انا لو جيت هنا هتروح تلاقيه جايب لك الموظفين بايه بنل ليه الكلام الوحش ده قاللك عشان احنا
هنا بنفعل الليز لودين يعني ايه يعني ايه اللي هنا؟ قاللك مش بجيب النافيجيشن بوررتي والله لو في 20 موظف ما هيجيبهولكش وبالتالي لو انت بترجع اوبجكت
من الموظف جواه اوبجكت من الديبارتمنت الديبارتمنت هيبقى بنل يقوللك النافيجيشن بوررتي مش هجيبها ليه عشان الاوبجكت يبقى لايت انا مش هبعت اجيبه طب انا عايزه بقى
الديبارتمنت قال لك تعمل سلكت لو كتبت كلمه الامبس دي في وير او في سلكت هتجيلك او ان انت ممكن تيجي هنا تقول لي ايه
والله انا عايز اعمل انكلود وفي الانكلود تقول له ايه انا عايزه من الديبارتمنت انكلود الامبس
شايفين انا بايدي قلت له وانت رايح تجيبه ما تجيبوش بنال هات الامبس طب لو في نافيجيشن بوررتي تاني عايزاها زي امبارح البوك كان فيه اوثر وسبجكت وببلشر هكتب
هنا مين قال لك ممكن بعد ده تعمل دوت انكلود وتقول اللي بعديها ايه اه بس هي ليز لودينج مش حلو اساسا زين
انكلود يعني ايه يعني من جوه الموظف بقى انا يعني شوف انا واقفه على الديبارتمنت تقول له من جوه الديبارتمنت هات الامبلوي كل امبلوي هات من جواه
كذا هم ليه عملوا كده عشان الاوبجكت يبقى لايت اصل انت متخيل ان كل مره السيرفر يبعت اند يبعت الفرونت اوبجكت من البارتمنت في
الموظفين كلها وكل موظف في بياناته بالديبارتمنت اللي جواه والديبارتمنت جواه لسه من الموظفين فانت دخلت في رييشنز صعب
شويه فبالتالي يقوللك ايه اول ما الاقيشن بر تحط فيها ن الا اذا كنت عايزها فبجي اقول لها هاتي فبص ساعتها
دلوقتي فده ما يفضلش ده الحل ده مش احسن حل الحل الاحسن اللي احنا هنعمله بعد البريك ماشي بص كده
قال لك ايه هتبعت كده ادي الديبارتمنت اندكس بص المره دي بقى لما قلت له انكلود فهتلاقي جالك كل ديبارتمنت ومعاه الامبس مش
بنل بصوا جابها بس بصوا بقى يعني الموظف جواه ريفرنس من الامبلو ابتدى بقى يشغل كل حاجه شايفه الامبلوي
جواه ديبارتمنت شايفه انا عماله افتح ازاي ان شاء الله احنا كل الداتا دي هتتحول لجيسون لما نيجي نقول له حوله لجيسون ف هيحوله ازاي ده جيسون شايف انا عماله ادخل
مش منتهيه وده ممكن في وقت من الاوقات يسبب لك مشكله في حته ان انت تقول له انكلود انكلود انكلود نستخدمها على ادي الاحوال ما هي لو كانت كويسه كانوا خلوها
وعلى فكره في البروجكتس النون كور كان الليزر لودين كان بيبقى متفعل كنا اول حاجه بنروح نعملها نقول له ايه لو سمحت في الكونتكست خلي الليز لودينج اوف ما تشغلوش
انا لو عايزاه انا اللي هطلبه هعمل كده ماشي فين الكاشينج ده كويري ده في كل اتريشن هيروح للداتا بيز ويجي دي مش بتضيه
اصلا الراجل ده بيرجع اي كوراب لما انا قلت له تو ليست راح للداتا بايس جاب كل الحاجات دي فدي برض كتيره لان الكل ديبارتمنت لما انت قلت له توست ما
انت اخدت نسخه اوف لاين دلوقتي بس راح نفذ الكويري برض ما هلف عليها بفور ايتش وكل فور ايتش كل ايتم بيروح للداتا بايز يجيبها ويجيب عيالها لان احنا مش عايزين انت دلوقتي
عايز بيانات ديبارتمنت ليه تجيب معاك الحاجات دي لان كيس يعني مش عايز يخليك 100% لما تعوزها تجيبها يعني كده لا انا قلت لك لما تعوزها اعمل انكلود طول ما انت
مش عايز عايزها خلاص هو مش بيجيبها فالبروسيس اسرع ماشي تمام دي بس قلنا نقولها عشان لو حضرتك في اللاب مثلا عايز موظف باسم
الديبارتمنت هيضرب اكسبشن ما تجيبنيش تقول لي رامي نال وانا باعته الموديل لا هو مش معترض على الموديل اصلا هو معترض انك من
جوه الموديل بتقول دوت ديبارتمنت دوت نيم الديبارتمنت ده هو اللينض مش الموديل حلو
الكلام طيب احنا كده اشتغلنا سترونج تايب فيو خلصنا الحاجات بتاعتنا فاضل لنا التوبك بتاع ايه ان احنا عايزين نبعت البيانات باكتر من طريقه من
الباك اند للفرونت ماشي في حد عنده اي سؤال تمام فين البيرنت الكونتكست قصدك هنا
اهو ده هنا دي ما ده الديفولت على فكره انا كاتباه عشان تعرف اللي بيحصل انا ككونتكست بروح اقول
له ايه لو سمحت يا كونتكست احنا شغالين دلوقتي هنكار احنا مكاريتينه باستخدام الفولت كونستكتور صح فهو بيروح يكارت اوبجكت من قبل ما يكد هينده ايه طول ما انت مش قايل نوع
معين من الكون عند ماشيح عند طيب بتعمل ايه بتقولله انا هستخدم
كده تشينين على كونستراكتور عندي انا في نفس الكلاشه كده كاتب ذس مش بيس هروح على كونستراكتور بياخد دي بكونكست اوبشنز هيروح دي بكونكست اوبشن تقوللك ايه انا
بجيب الاوبشنز دول بطريقتين يا اما هنده الاونك كونفيجر فتعملي لدر ليها يا اما حاجه اسمها انجكشن دي اللي هناخدها فين في اليوم الثامن باستخدام حاجه اسمها سيرفيس
بروفايدر دي ما اخدناهاش بتاعه اليوم الثامن فاحنا حاليا شغالين بالاون كونفيجر وهو حتى هتلاقيه كاتبها من فوق لو سمحت روح اعمل اعمل اوفر رايت للاون
كونفيجر لان احنا ذس ميثود ويل كول مع كل انستنس بيتكارت هي من جواها ماشي تمام طيب نتقابل على كام كده
ان شاء الله ناخد يا 11 هو ده الكبير ولا ايه لا بصوا احنا دلوقتي لو قلنا الاثلث 11 الا 5 انا
هبدا اللي يدخل بعدي يدخل برشاكه والا ايه يتفضل كده من نفسه زي ما عمل كان في بشوانس المره اللي فاتت دخل وراح ورانا المثال السيء للطالب اللي بيدخل متاخر مش عايزين نعمل زيه
Loading video analysis...