سؤال

أقوم بإنشاء مكتبة C# وسأفضّل واجهة com لها.

أنا أفهم الخطوات التي تم إعادة القيام بها للقيام بذلك ، أي

  1. تأكد من تعيين GUID على افتراض ، على سبيل المثال:[assembly: Guid("dde7717b-2b75-4972-a4eb-b3d040c0a182")]
  2. تأكد من صحة السمة المشتركة
  3. ضع سمة GUID على الفصل ، على سبيل المثال [GuidAttribute("4df74b15-d531-4217-af7e-56972e393904")]
  4. سجل باستخدام Regasm.

سؤالي هو هذا. إذا كان لدي فئة جزئية محددة. هل أحتاج إلى إضافة ملف GuidAttribute لكلا هذه الفئتين؟

في الواقع ، التفكير في هذا ، أنا أعتقد أن هذا السؤال يطبق أيا كان السمة (على سبيل المثال Serializable).

سيكون موضع تقدير أي مساعدة. شكرًا.

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

المحلول

إذا قمت بتطبيق سمة مرتين على نفس الفئة (بغض النظر عما إذا كان في نفس الملف أو في ملفين مختلفين) ، فسيتم تطبيق السمة مرتين. فئة جزئية محددة في ملفين ليست فئتين ، فهي مجرد فئة واحدة محددة جزئيًا في ملفات متعددة. لذلك ، لا ، لا تكرر Guidattribute في كل ملف مرة أخرى.

نصائح أخرى

في وقت الترجمة ، يتم دمج سمات التعريفات الجزئية من النوع. على سبيل المثال ، التصريحات التالية:

[System.SerializableAttribute]
partial class Moon { }

[System.ObsoleteAttribute]
partial class Moon { }

تعادل:

[System.SerializableAttribute]
[System.ObsoleteAttribute]
class Moon { }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top