مهمة GenerateTemporaryTargetAssembly

تقوم المهمة GenerateTemporaryTargetAssembly بإنشاء تجميع إذا على الأقل صفحة Extensible Application Markup Language (XAML) واحدة تشير إلى نوع معرّف محليا في ذلك المشروع. يتم حذف التجميع المتولد بعد إتمام عملية البناء أو عند فشل عملية البناء.

معلّمات المهمة

المعلمة

الوصف

AssemblyName

المعلّمة المطلوبة String.

تعيّن إسم التجميع القصير الذي يتم إنشاؤه لمشروع وهي أيضاً إسم تجميع الهدف الذي يتم إنشاؤه بشكل مؤقت. على سبيل المثال، إذا قام المشروع بتوليد Windows القابل للتنفيذ ذو الإسم WinExeAssembly.exe , تأخذ المعلّمة AssemblyName القيمة WinExeAssembly.

CompileTargetName

المعلّمة المطلوبة String.

تعيّن إسم الهدف Microsoft build engine (MSBuild) الذي يُستخدم لإنشاء تجميعات من ملفات مصدر التعليمات البرمجية. القيمة النموذجية ل CompileTargetName هي CoreCompile.

CompileTypeName

المعلّمة المطلوبة String.

تعيين نوع التحويل البرمجي الذي يتم تنفيذه بواسطة الهدف المحدّد بواسطة المعلّمة CompileTargetName. للهدف CoreCompile , هذه القيمة هي Compile.

CurrentProject

المعلّمة المطلوبة String.

تحدّد المسار الكامل لملف المشروع MSBuild للمشروع الذي يتطلب تجميع هدف مؤقت.

GeneratedCodeFiles

المعلّمة الاختيارية [] ITaskItem.

تعيّن قائمة ملفات التعليمات البرمجية المدارة ذات لغة خاصة التي تم إنشاؤها بواسطة مهمة مهمة MarkupCompilePass1.

IntermediateOutputPath

المعلّمة المطلوبة String.

تعيّن الدليل الذي يتم إنشاء تجميع الهدف المؤقت إليه.

MSBuildBinPath

المعلّمة المطلوبة String.

تحدّد موقع ‏‫MSBuild.exe ، المطلوب لترجمة - تجميع الهدف المؤقت - برمجياً.

ReferencePath

المعلّمة الاختيارية [] ITaskItem.

تعيّن قائمة من التجميعات ، حسب اسم الملف و المسار , التي يتم الرجوع إليها بواسطة الأنواع المترجمة في تجميع الهدف المؤقت.

ReferencePathTypeName

المعلّمة المطلوبة String.

تعيّن المعلمة التي يتم استخدامها بواسطة معلّمة هدف التحويل البرمجي (CompileTargetName) التي تحدد قائمة من مراجع التجميع (ReferencePath). القيمة المناسبة هي ReferencePath.

ملاحظات

تمرير ترميز التحويل البرمجي الأول الذي يتم تشغيله بواسطة مهمة MarkupCompilePass1، يقوم بترجمة ملفات XAML برمجياً إلى تنسيق ثنائي. و بالتالي، يحتاج المحوّل البرمجي قائمة من التجميعات المشار إليها التي تحتوي على الأنواع المستخدمة بواسطة ملفات XAML . ومع ذلك، إذا كان الملف XAML يستخدم نوع معرّف في نفس المشروع ، فإنه لا يتم إنشاء التجميع المطابق لهذا المشروع حتى يتم إنشاء المشروع. لذلك، لا يمكن توفير مرجع التجميع أثناء تمرير ترميز التحويل البرمجي الأول.

بدلاً من ذلك، MarkupCompilePass1 ينتظر تحويل ملفات XAML التي تحتوي على مراجع لأنواع في نفس المشروع إلى ترميز ثاني لتمرير التحويل البرمجي الذي يتم تنفيذه بواسطة مهمة MarkupCompilePass2. قبل تنفيذ MarkupCompilePass2 ، يتم إنشاء تجميع مؤقت. يحتوي هذا التجميع على الأنواع التي يتم إستخدامها بواسطة الملفات XAML التي يتم تأجيل ترميز تمرير التحويل البرمجي الخاص بها. يتم توفير مرجع إلى التجميع الذي تم إنشاؤه إلى MarkupCompilePass2 عند تشغيلها للسماح بتحويل ملفات التحويل البرمجي المؤجلة XAML إلى تنسيق ثنائي.

مثال

ينشئ المثال التالي تجميع مؤقت لأن Page1.xaml تحتوي على مرجع إلى نوع في نفس المشروع.

<Project xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
  <UsingTask
    TaskName="Microsoft.Build.Tasks.Windows.GenerateTemporaryTargetAssembly" 
    AssemblyFile="C:\Program Files\Reference Assemblies\Microsoft\Framework\v3.0\PresentationBuildTasks.dll" />
  <Target Name="GenerateTemporaryTargetAssemblyTask">
    <GenerateTemporaryTargetAssembly
      AssemblyName="WPFMSBuildSample"
      CompileTargetName="CoreCompile"
      CompileTypeName="Compile"
      CurrentProject="FullBuild.proj"
      GeneratedCodeFiles="obj\debug\app.g.cs;obj\debug\Page1.g.cs;obj\debug\Page2.g.cs"
      ReferencePath="c:\windows\Microsoft.net\Framework\v2.0.50727\System.dll;C:\Program Files\Reference Assemblies\Microsoft\WinFx\v3.0\PresentationCore.dll;C:\Program Files\Reference Assemblies\Microsoft\WinFx\v3.0\PresentationFramework.dll;C:\Program Files\Reference Assemblies\Microsoft\WinFx\v3.0\WindowsBase.dll"
      IntermediateOutputPath=".\obj\debug\"
      MSBuildBinPath="$(MSBuildBinPath)"
      ReferencePathTypeName="ReferencePath"/>
  </Target>
</Project>

راجع أيضًا:

المبادئ

إنشاء تطبيق WPF (WPF)

نظرة عامة عرض تقديمي البنية الأساسية لعرض برامج XAML المستعرض تطبيقات حول Windows

موارد أخرى

مرجع ‏‫MSBuild WPF

مرجع مهمة ‏‫MSBuild WPF

مرجع ‏‫MSBuild

مرجع مهمة ‏‫MSBuild