سؤال

تحتوي ملفات Visual Studio Solution على معرفين GUID لكل إدخال مشروع.أعتقد أن أحدهم من AssemblyInfo.cs

هل يعرف أحد على وجه اليقين من أين تأتي هذه، وفيم تستخدم؟

هل كانت مفيدة؟

المحلول

لا يعد أي من المعرفين الفريدين العموميين هو نفس المعرف الفريد العمومي الموجود في AssemblyInfo.cs (وهذا هو المعرف الفريد العمومي للتجميع نفسه، وليس مرتبطًا بـ Visual Studio ولكنه المنتج النهائي للبناء).

لذلك، بالنسبة للخط النموذجي في ملف sln (افتح .sln في المفكرة أو المحرر الذي تختاره إذا كنت ترغب في رؤية هذا):

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleSandbox", "ConsoleSandbox\ConsoleSandbox.csproj", "{55A1FD06-FB00-4F8A-9153-C432357F5CAC}"

GUID الثاني هو GUID فريد للمشروع نفسه.يستخدم ملف الحل هذا لتعيين الإعدادات الأخرى لهذا المشروع:

GlobalSection(ProjectConfigurationPlatforms) = postSolution
    {55A1FD06-FB00-4F8A-9153-C432357F5CAC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
    {55A1FD06-FB00-4F8A-9153-C432357F5CAC}.Debug|Any CPU.Build.0 = Debug|Any CPU
    {55A1FD06-FB00-4F8A-9153-C432357F5CAC}.Release|Any CPU.ActiveCfg = Release|Any CPU
    {55A1FD06-FB00-4F8A-9153-C432357F5CAC}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection

المعرف الفريد العمومي (GUID) الأول هو في الواقع المعرف الفريد العمومي (GUID) وهو المعرف الفريد العمومي (GUID) للحل نفسه (على ما أعتقد).إذا كان لديك حل مع أكثر من مشروع واحد، فسترى في الواقع شيئًا مثل ما يلي:

Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConsoleSandbox", "ConsoleSandbox\ConsoleSandbox.csproj", "{55A1FD06-FB00-4F8A-9153-C432357F5CAC}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Composite", "..\CompositeWPF\Source\CAL\Composite\Composite.csproj", "{77138947-1D13-4E22-AEE0-5D0DD046CA34}"
EndProject

نصائح أخرى

وفقا لMSDN:

[ال Project] البيان يحتوي على GUID Project الفريد ونوع المشروع GUID.يتم استخدام هذه المعلومات من قبل البيئة للعثور على ملف المشروع أو الملفات التي تنتمي إلى الحل ، و VSpackage المطلوبة لكل مشروع.يتم تمرير GUID Project إلى ivsprojectFactory لتحميل vSpackage المحددة المتعلقة بالمشروع ، ثم يتم تحميل المشروع بواسطة VSpackage.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top