سؤال

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

والمشكلة أواجه هو أنني أعلم أن كل SavedOrder لديها، في مكان ما في أحشاء منه في الميراث وأعضاء (الذين لديهم عضوا، منهم لديهم أفراد، وهلم جرا وهلم جرا)، وقطعة من البيانات I 'م تبحث عنه.

لوأنا الآن أجد نفسي بغفلة توسيع بلدي الساعات وإصطياد الفئران فوق الكائنات للعثور على أمل ما كنت أبحث عنه. لا أحد يعرف من البرنامج المساعد / التقنية لاستخدامها للعثور على ما إذا كان هذا الكائن لديه شيء من "نوع A" أو شيء ذي قيمة "SomeEnum.SomeValue"؟

وتحرير: جميع مدخلات جيدة، لا شيء يحل بعد ذلك تماما هدفي. المتصفحات الكائن (كائن المستعرض والعاكس) القيام بعمل جيد لتصفح أعضاء كل كائن، ولكن في هدف ربط النقطة ألف إلى النقطة D، هم في الحقيقة مجرد مساعدة في تحقيق النقطة ألف إلى النقطة B أو D إلى C.

واعتقد ان الزائفة ج # خوارزمية العودية أن أصف أفضل حل سيكون:

WheresWaldo FindMember(Object o)
{
    foreach(PublicMember member in o)
    {
         if(o.IsType(MyType))
            return Success!;
         else
            return WheresWaldo(member);
    }


}

ومن يدري، ربما غير ممكن.

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

المحلول

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

وتحرير: بناء على تعليقاتكم، وأود أن أقول إن العاكس قد يكون من المفيد. فمن لديه خيار للبحث عن أنواع معينة أو أفراد. إطلاق العاكس معك الجمعيات ذات الصلة. اضغط F3 للبحث وحدد على Ctrl-M للأعضاء واكتب اسم العضو الذي تبحث عنه. يمكنك تبديل تطابق تام / إيقاف لمساعدتك في البحث.

نصائح أخرى

ObjectBrowser هو على الارجح ما تريد ليستخدم. يمكنك البحث عن الخصائص باستخدام ذلك.

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