نقل الحلول بين البيئات
تتمثل إحدى الفوائد الرئيسية لاستخدَام الحلول فِي القدرة عَلى استيرَاد الحلول وتصديرهَا مِن بيئات Microsoft Power Platform. تتيح هذه الميزة حَالات الاستخدَام الرئيسية التَالِية:
استيرَاد حَل تم تصديره إلى بيئات أخرى
تصدير أحد الحلول للتخزين فِي التحكم بالمصدر
النسخ الاحتيَاطي عند الطلب لمكونَات الحَل والقدرة عَلى استعادة مكونَات الحَل دون استعادة البيئات الكاملة
يُمكنك تصدير الحلول واستيرَادهَا يدويَا مِن "مستكشف الحلول"، أو يُمكنك جعل الاستيرَاد والتصدير آليَا باستِخدَام Microsoft Power Platform Build Tools.
الحلول المُدَارة أو غير المُدَارة
يُمكن أن يكون الحَل إمَا مُدَارًا أو غير مُدَار. يحدد هذَا التعيين مَا يُمكنك فعله بالحل. استخدم الحلول غير المُدَارة فِي بيئات التطوير فِي أثنَاء إجرَاء تغييرَات عَلى التَدفُّقَات السَحَابِية ومكونَات الحلول الأخرى. استخدم الحلول المُدَارة عندمَا تقوم بالنشر فِي بيئة ليست بيئة تطوير لهذَا الحل. يصبح نشطًا عندمَا يتم استيرَاد الحَل الذي تم تصديره إلى بيئة أخرى، كمَا يتم تحديد نَوع الحَل عَن طريق الاختيَار عند التصدير.
عَلى سَبِيل المِثَال، مِن الممَارسَات الشَائعة أن يكون لديك بيئة تطوير معَ حلك (غير مُدَار) حيث يُمكنك إنشَاء التَدفُّقَات السَحَابِية ومكونَات الحلول الأخرى. بَعد ذلك، يُمكنك تصدير إصدَار غير مُدَار وإصدَار مُدَار مِن حلك عندمَا تكون جَاهزًا للنشر فِي بيئة الاختبار الخَاصة بك. يُمكنك الاحتفَاظ بالحَل غير المُدَار آمِنًا كنسخة احتيَاطية مِن عملك. يُمكنك أيضًا استخدَام أدوات مثل SolutionPackager أو Microsoft Power Platform CLI لاستخرَاج المِلَفَات الفردية مِن الحَل غير المُدَار الذي تم تصديره ثم التحقق مِنهَا فِي التحكُّم بالمَصَادر مثل GitHub أو Microsoft Azure DevOps.
بالإضَافَة إلى ذلك، يُمكنك استخدَام الحَل غير المُدَار إذَا كنت بحَاجة إلى إعادة إنشَاء بيئة التطوير الخَاصة بك. لهذَا السبب، تأكد مِن أن لديك دَائمًا حلا تمَّ تصديرُه وغير مُدَارٍ. سَوفَ يتمُّ استخدَامُ الإصدَار المُدَار مِن مِلفِ الحَلِّ، عند الاستيرَادِ إلى بيئة الاختبار. يتم استيرَاد نفس الإصدَار المُدَار إلى الإنتَاج، بَعد نجَاح الاختبار. النقطة الأسَاسية هي أن أي تغيير فِي مكون الحَل يتم فِي بيئة التطوير وحسب. لا يُمكنك تغيير مكون الحَل المُدَار مباشرةً، بهدف المسَاعدة فِي فرض هذه الفكرة، مَا يسَاعد عَلى مَنعِ التَغيِيرَاتِ العَرضِية.
تَصدِير الحُلول
عندمَا تقوم بتصدير الحلول يدويًا مِن مستكشف الحلول، ستتلقى مطَالبات ببعض الخيَارَات. الخيَارَان الأولان همَا نشر كل التغييرَات والتحقق مِن المشكلات.

خيَار نشر كل التغييرَات ليس مطلوبًا للتدفقَات السَحَابِية، ولكنه يعد فكرة جيدة إذَا كان لديك مكونَات حَل أخرى. تتطلب بعض التخصيصَات التي تُجري تغييرَات عَلى مكونَات واجهة المستخدم النشر قبل التصدير.
تحقَّق مِن المُشكِلات عَن طَريقِ إجرَاءِ تَحليلٍ لجَمِيع مُكوِّنَات الحلِّ. يشبه هذَا التحليل مدقق التَدفُّق، ولكنه لجميع المكونَات فِي الحَل لديك، والتحليل يحذرك مِن المشَاكل.
الموجه الثَاني هو لرقم الإصدَار ولتحديد مُدَار أو غير مُدَار.

بشكل افترَاضي، يقوم الحَل بزيَادة رقم الإصدَار عند التصدير. بشكل أسَاسي، سَوفَ يكون لديهم أرقَام إصدَارَاتٍ مختلفةٍ، ولكنهم سيمثِّلون نفس الإصدَار، إذَا قمتَ بتصدير حلٍ مُدَارٍ وغير مُدَارٍ فِي نَفسِ الجلسةِ. لتجنب هذَا الموقف، يُمكنك ضبط الإصدَار يدويًا كي يكون هو نفسه لكلا الإصدَارين.
بالنسبة لخيَار التصدير كـ، نوصي بإجرَاء التصدير مرتين، مرة للخيَار المُدَار ومرة واحدة لغير المُدَار. تأكد مِن تصدير نسخة غير مُدَارة عند تصدير حَل مُدَار.
استيرَاد الحلول
سَوفَ تتَمكن ممَا يلي باستيرَاد مِلَف الحَل الذي تم تصديره، لنشر أحد الحلول فِي بيئة أخرى. يُمكنك استيرَاد مِلَف الحَل المُدَار أو غير المُدَار.
يجب أن يستهدف استيرَاد أحد الحلول غير المُدَارة بيئات التطوير. بَعد اكتمَال عملية الاستيرَاد، يتم دمج مكونَات الحَل فِي البيئة. لن تتَمكن مِن الترَاجع عَن الإجرَاء، وستؤدي إزَالة الحَل فَقَط إلى إزَالة الحَل وليس مكونَات الحَل المدموجة. سَوفَ يتم تحديث الاستيرَاد والكتَابة فوق الموارد المطَابقة الحَالية، إذَا كان الحَل موجودًا بالفعل فِي البيئة. جميع عمليَات استيرَاد الحلول مضَافة وأي مكون حَل غير موجود فِي الإصدَار الجَدِيد سيظل موجودًا فِي البيئة بَعد اكتمَال استيرَاد التحديث. تأكد مِن عدم قيَامك بالكتَابة فوق العمل الأخير بطريق الخطأ مِنذ آخر تصدير، وأنك تقوم فَقَط باستيرَاد الحلول غير المُدَارة إلى البيئات المقصودة.
يجب أن يستهدف استيرَاد حلٍ مُدَارٍ البيئات غير التطويرية، مثل الاختبار والإنتَاج. عَلى عكس الحلول غير المُدَارة، عند استيرَاد حَل مُدَار، لا يتم دمجه بنفس الطريقة ولكنه ينشئ طبقة التخصيص الخَاصة به لتتبع التغييرَات التي تم إجرَاؤهَا عَلى البيئة وإدَارتهَا.
تتيح لك طبقَات الحلول تتبع التغييرَات التي تم إجرَاؤهَا عَلى مكونَات الحَل فِي الحَل الذي تديره. يمثل السلوك الافترَاضي معالجة الاستيرَاد كترقية، إذَا قمت باستيرَاد تحديث إلى حَل مُدَار. يقوم إصدَار الحَل المحدث باستيرَاد الإصدَار الأقدم وكتَابته فوقه. تعمل هذه العملية عَلى إزَالة أي مكونَاتِ حلٍ قديمةٍ لا تشكل جزءًا مِن الإصدَار الجَدِيد مِن البيئة. عَلى سَبِيل المِثَال، إذَا قمت بحذف سير عمل سَحَابِي أثنَاء التطوير، فعند استيرَاد الإصدَار الأحدث إلى بيئة الاختبار، يختفِي السير عمل المحذوف مِن بيئة الاختبار. تعمل إزَالة الحَل المُدَار مثل إلغاء التثبيت؛ حيث تختفِي جميع مكونَات الحَل التي لا تتم الإشَارة إليهَا بواسطة حَل آخر، بمَا فِي ذلك بيَانَاتهَا. يجب تجنب تحديث التَدفُّقَات السَحَابِية يدويًا فِي البيئات التي يتم فِيهَا نشر الحَل عَلى أنه مُدَار لأنه يُنشئ تغييرًا غير مُدَار يمِنع التحديثَات المستقبلية. عَلى سَبِيل المِثَال، ورغم أنه لن يتم تحديث سير عمل الإنتَاج السَحَابِي الخَاص بك، يعمل النشر التَالِي لاستيرَاد إصدَار جَدِيد بشكل جيد؛ إذَا قمت بإصلاح سير عمل سَحَابِي فِي الإنتَاج. يُمكنك تحديد هذه المشكلة وحلهَا باستِخدَام ميزَات إدَارة طبقة الحلول. يُمكنك أيضًا تجنب هذه المشكلة عَن طريق إجرَاء تغييرَات فَقَط فِي بيئة التطوير الخَاصة بك.
ستتم مطَالبتك بتحديث أي مرَاجع اتصَال لم يتم إنشَاؤهَا مسبقًا، وذلك بالنسبة لأي نَوع مِن أنواع استيرَاد الحلول.

بالإضَافَة إلى ذلك، سيُطلب مِنك تقديم قيمة حَالية لهذه البيئة، إذَا لم يكن لمتغيرَات البيئة فِي الحَل قيمة.

سيتم تشغيل عمليَات استيرَاد الحلول وتصديرهَا فِي الخلفِية، وسيتم إعلامك بإكمَالهَا.