/linkresource (خيارات المحول البرمجي C#)
يقوم بإنشاء ارتباط إلى مورد .NET Framework في ملف الإخراج. لا يتم إضافة ملف المورد إلى ملف الإخراج. هذا يختلف عن خيار /resource الذي يضمّن ملف مورد في ملف الإخراج.
/linkresource:filename[,identifier[,accessibility-modifier]]
الوسيطات
filename
ملف المورد لـ .NET Framework الذي تريد الربط إليه من التجميع.·identifier (اختياري):
الاسم المنطقي للمورد; الاسم الذي يُستخدم لتحميل المورد. الإعداد الافتراضي هو اسم الملف.·accessibility-modifier (اختياري):
الوصول للمورد: عام أو خاص. الافتراضي هو العام.
ملاحظات
بشكل افتراضي، الموارد المرتبطة تكون عامة في التجميع عند إنشاءها من خلال المترجم C#. لجعل الموارد خاصة, حدد private كـمعدِّل الوصول. لا معدّل آخر غير public أو private يُسمح به.
/linkresource تتطلب واحد من خيارات/target غير /target:module.
إذا كان filename ملف مورد .NET Framework منشأ, على سبيل المثال، عن طريق Resgen.exe أو في بيئة التطوير يمكن الوصول إليه عن طريق أعضاء في مساحة الاسم System.Resources . لمزيد من المعلومات، راجع System.Resources.ResourceManager. لكافة الموارد الأخرى استخدم الأساليب GetManifestResource * في الفئة Assembly للوصول إلى الموارد في وقت التشغيل.
الملف المحدد في filename يمكن أن يكون أي تنسيق. على سبيل المثال، قد تريد أن تجعل DLL الأصلي جزءاً من التجميع، بحيث يمكن تثبيته في ذاكرة التخزين المؤقتة للتجميع العمومي و الوصول إليه من تعليمات برمجية تمت إدارتها في التجميع. يُظهر المثال الثاني من الأمثلة التالية كيفية القيام بذلك. يمكنك القيام بنفس الشيء في رابط التجميع. يُظهر المثال الثالث من الأمثلة التالية كيفية القيام بذلك. للمزيد من المعلومات، راجع Al.exe (رابط التجميع) والعمل مع التجميعات ذاكرة التخزين المؤقتة للتجميع العمومي.
/linkres هو النموذج القصير من**/linkresource**.
خيار المحول البرمجي هذا غير متوفر في Visual Studio ولا يمكن تغييره برمجياً.
مثال
ترجم in.cs واربطه بملف المورد rf.resource:
csc /linkresource:rf.resource in.cs
ترجم A.cs إلى DLL ، اربطه بالـ DLL الأصلي N.dll ثم ضع الناتج في ذاكرة التخزين المؤقتة للتجميع العمومي (GAC). في هذا المثال، كل من A.dll و N.dll موجودون في GAC .
csc /linkresource:N.dll /t:library A.cs
gacutil -i A.dll
يقوم هذا المثال بنفس الشيء مثل السابق ولكن باستخدام خيارات "رابط التجميع".
csc /t:module A.cs
al /out:A.dll A.netmodule /link:N.dll
gacutil -i A.dll