تمرين - الرجوع إلى الحزمة من التطبيق
في هذه الوحدة، ستحصل على التعليمة البرمجية الجديدة Tailspin.SpaceGame.Web، التي تحتوي على فئات النماذج التي تمت إزالتها. بدلا من الرجوع إلى النماذج مباشرة، ستشير إليها التعليمات البرمجية من الحزمة التي أنشأتها في الوحدة السابقة.
فيما يلي قائمة بالخطوات:
- احصل على التعليمات البرمجية الجديدة من فرع مستودع Tailspin.SpaceGame.Web الأصلي.
- الرجوع إلى حزمة النماذج الجديدة، الإصدار 1.0.0.
- للبحث عن هذه الحزمة في موجز Azure Artifacts، قم بتغيير البنية الأساسية لبرنامج ربط العمليات التجارية للبناء.
- شاهد البنية الأساسية لبرنامج ربط العمليات التجارية بنجاح في إنشاء التطبيق.
إحضار الفرع من GitHub
models-package
أحضر الفرع من GitHub وتحقق من هذا الفرع أو قم بالتبديل إليه.
يحتوي هذا الفرع على مشروع Space Game الذي عملت معه في الوحدات النمطية السابقة، ولكن تمت إزالة دليل Models.
التبديل إلى النسخة الخاصة بك من Visual Studio Code التي تعرض المشروع Tailspin.SpaceGame.Web.
من المحطة الطرفية، لإحضار فرع يسمى
models-package
من مستودع Microsoft، قم بتشغيل الأوامر التاليةgit
. ثم قم بالتبديل إلى هذا الفرع.git fetch upstream models-package git checkout -B models-package upstream/models-package
يسمح لك تنسيق هذه الأوامر بالحصول على التعليمات البرمجية للبدء من مستودع Microsoft على GitHub، والمعروفة باسم
upstream
. قريبا، ستدفع هذا الفرع إلى مستودع GitHub الخاص بك، والمعروف باسمorigin
.كخطوة اختيارية، تحقق من أن دليل Models لم يعد موجودا في مستكشف الملفات. بدلا من ذلك، يجب أن يكون لديك وحدات تحكم وطرق عرض ودلائل أخرى.
الرجوع إلى حزمة النماذج
افتح الملف Tailspin.SpaceGame.Web.csproj ثم، قم بإضافة
ItemGroup
التالية:<ItemGroup> <PackageReference Include="Tailspin.SpaceGame.Web.Models" Version="1.0.0" /> </ItemGroup>
تأكد من وضع
ItemGroup
داخل عقدةProject
. يجب أن يكون ملفك مشابهاً لهذا الملف:<Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <TargetFramework>net6.0</TargetFramework> <ProjectGuid>{A0C4E31E-AC75-4F39-9F59-0AA19D9B8F46}</ProjectGuid> </PropertyGroup> <ItemGroup> <PackageReference Include="Tailspin.SpaceGame.Web.Models" Version="1.0.0" /> </ItemGroup> <ItemGroup> <Folder Include="wwwroot\images\avatars\" /> </ItemGroup> </Project>
لتضمين بادئة ما قبل الإصدار التي تم إنشاؤها في أثناء عملية الإنشاء، قم بتعديل الإصدار "1.0.0". إليك مثال:
<PackageReference Include="Tailspin.SpaceGame.Web.Models" Version="1.0.0-CI-20200610-165738" />
يشير هذا إلى حزمة Tailspin.SpaceGame.Web.Models التي قمت بإنشائها في Azure Artifacts. لاحظ رقم الإصدار، 1.0.0، بالإضافة إلى لاحقة الإصدار المسبق. يطابق هذا الإصدار الأولي الذي قمت بنشره إلى Azure Artifacts في الوحدة السابقة.
احفظ الملف.
إشعار
عند حفظ الملف، قد يطلب منك Visual Studio Code استعادة التبعيات. حدد الزر Restore لاستعادة التبعيات.
تعديل تكوين البنية الأساسية لبرنامج ربط العمليات التجارية
يوفر فرع models-package
ملف azure-pipelines.yml الأولي. هنا، ستقوم بتعديل تكوين البنية الأساسية لبرنامج ربط العمليات التجارية لسحب حزمة Tailspin.SpaceGame.Web.Models من Azure Artifacts.
من Visual Studio Code، افتح azure-pipelines.yml.
تعديل azure-pipelines.yml كما هو موضح هنا:
trigger: - '*' pool: vmImage: 'ubuntu-20.04' demands: - npm variables: buildConfiguration: 'Release' wwwrootDir: 'Tailspin.SpaceGame.Web/wwwroot' dotnetSdkVersion: '6.x' steps: - task: UseDotNet@2 displayName: 'Use .NET SDK $(dotnetSdkVersion)' inputs: version: '$(dotnetSdkVersion)' - task: NuGetToolInstaller@0 inputs: versionSpec: '5.9.1' - task: Npm@1 displayName: 'Run npm install' inputs: verbose: false - script: './node_modules/.bin/node-sass $(wwwrootDir) --output $(wwwrootDir)' displayName: 'Compile Sass assets' - task: gulp@1 displayName: 'Run gulp tasks' - script: 'echo "$(Build.DefinitionName), $(Build.BuildId), $(Build.BuildNumber)" > buildinfo.txt' displayName: 'Write build info' workingDirectory: $(wwwrootDir) - task: NuGetCommand@2 displayName: 'Restore project dependencies' inputs: command: 'restore' restoreSolution: '**/*.sln' feedsToUse: 'select' vstsFeed: '$(System.TeamProject)/Tailspin.SpaceGame.Web.Models' - task: DotNetCoreCLI@2 displayName: 'Build the project - $(buildConfiguration)' inputs: command: 'build' arguments: '--no-restore --configuration $(buildConfiguration)' projects: '**/*.csproj' - task: DotNetCoreCLI@2 displayName: 'Publish the project - $(buildConfiguration)' inputs: command: 'publish' projects: '**/*.csproj' publishWebProjects: false arguments: '--no-build --configuration $(buildConfiguration) --output $(Build.ArtifactStagingDirectory)/$(buildConfiguration)' zipAfterPublish: true - task: PublishBuildArtifacts@1 displayName: 'Publish Artifact: drop' condition: succeeded()
توضح التعليمات البرمجية المميزة مكان استعادة البنية الأساسية لبرنامج ربط العمليات التجارية للتبعيات، وتبحث في موجز Azure Artifacts الخاص بك عن التبعيات التي قد تكون هناك.
قم بعرض التغييرات وتثبيتها ودفعها إلى GitHub.
git add . git commit -m "Add reference to Models package" git push origin models-package
انتقل إلى Azure Pipelines وشاهد تشغيل الإصدار. يلتقط الإصدار حزمة «Models» لديك من Azure Artifacts وينشئ المشروع بنجاح.