ما هي النتائج المترتبة على كود NON-CLS المتوافقة في. NET؟

StackOverflow https://stackoverflow.com/questions/334496

سؤال

ولدي بضعة تحذيرات مترجم المزعجة لأحد التطبيقات التي سبق تصديرها من VB6 بعض الوقت بشأن العودة CLS الامتثال بما في ذلك:

Name '_AnIdentifier' is not CLS-Compliant.
Type of parameter 'myType' is not CLS-Compliant.

وعلى الرغم من ذلك، يبدو بلدي التطبيق لأداء ما يرام من العملاء المدارة COM و. لقد رأيت العديد من المقالات التي تصف ما يجب القيام به لجعل رمز CLS المتوافقة وأنا على الأرجح سوف نمضي قدما ونفعل ذلك على أي حال للتخلص من التحذيرات المزعجة، ولكن أنا الغريب ما العوائق من التعليمات البرمجية غير CLS متوافقة هي في عملي شروط؟ ما هي القيود غير هذا imposting بأنني لم تكتشف حتى الآن؟

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

المحلول

وفي الأساس، قد لا تكون صفك للوصول (أو قد تعمل بشكل غريب، مثل أرقام إيجابية كبيرة يجري التعامل معها على أنها سلبية)، عندما تستخدم مع بعض اللغات .NET. لا أستطيع أن أقول ما اللغات التي قد يكون.

وعلى سبيل المثال، لا أعتقد أن هناك حاجة إلى لغة إلى التعرف على identifer التي تبدأ مع تسطير. C # يسمح لها، لذلك كنت آمنة هناك، ولكن بالنسبة للغات الأخرى، "_AnIdentifier" قد تكون خفية، أو يكون له اسم ولدت النظام.

نصائح أخرى

ولقد واجهت مشاكل مع أدوات التشويش توليد كود غموض غير صحيحة عند التعليمات البرمجية التي يتم لا غموض CLS متوافقة.

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