سؤال

هل طرق الإرشاد المتاحة على إطار CE كذلك؟ لدي طريقة تمديد للسلسلة التي تعمل بشكل جيد في مشروع Windows Forms، ومع ذلك لن يبني في تطبيق PocketPC.

أحسب أن هذا سيكون الأمر سهلا لمعرفة ذلك، ومع ذلك لم أتمكن من العثور على أي معلومات بخصوص طرق الإرشاد على PocketPC.

تعديل: Ooops كان هذا خطأي. كتبت طريقة التمديد في Visual Studio 2008، ومع ذلك تم تجميع مشروع PocketPC في Visual Studio 2005، والذي لم أدركه. حسنا، هذه ساعة من حياتي أنا لا أعود أبدا. شكرا للجميع للحصول على إجابات على أي حال.

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

المحلول

يريد مسح القليل من الارتباك هنا. طرق التمديد هي ميزة للمترجم، وليس بالضرورة إصدار معين من الإطار. لذلك، يمكن استخدام طرق الإرشاد على أي نظام أساسي حيث يوجد إصدار من برنامج التحويل البرمجي الذي يدعم كل من طرق التمديد وهذا النظام الأساسي.

يمكن لمجموعة التحويل البرمجي C # 3.0 أسفل الهدف إلى 2.0 أطر ودعم طرق التمديد حتى يجب أن تكون متاحة في الإطار المضغوط.

الشيء الوحيد الذي يوفره الإطار في الواقع طرق الإرشاد هو إعادة الاستخدام. ومع ذلك، لا يحتوي هذا على أي وظيفة مرتبطة به ويمكن تعريفها من خلال طلبك إذا لم يكن متاحا. هنا هو منشور بلوق كتبته في هذا الموضوع

نصائح أخرى

نعم، يتم دعمها في CF 3.5. إذا كنت تستخدم CF 2.0، فستحتاج إلى تحديد إعادة التشغيل ثم سيعملون.

    // this is a definition of a 3.5 class for use in 2.0.  If we upgrade to target CF3.5, we will need to remove it...
    namespace System.Runtime.CompilerServices 
    { 
        public class ExtensionAttribute : Attribute { } 
    }

namespace TestExtension
{
    public static class Extensions
    {
        public static int TestMethod(this string value)
        {
            return value.ToString();
        }
    }
}

إنهم مدعومون في الإطار المدمج وفقا ل هذه المدونة post.. وبعد ومع ذلك، أتوقع أن تتطلب الإصدار الإطار المدمج 3.5. ما الإصدار الذي تستخدمه؟

ما إصدار الإطار الذي تستهدفه؟ إذا كنت تستهدف CF 2.0 من VS2008، فقد تحتاج إلى إعلان RESSSTELTTRITY ...

namespace System.Runtime.CompilerServices
{
    [AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class
         | AttributeTargets.Method)]
    public sealed class ExtensionAttribute : Attribute {}
}

يمكنك استخدامه مع .NET Framework Framework 2.0 و VS2008 من خلال اختراق صغير وفقا ل هذه مقالات.

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