سؤال

لدي سطر التعليمات البرمجي التالي في VS2008.

    VirtualPathData virtualPathData = 
        RouteTable.Routes.GetVirtualPath(_viewContext.RequestContext, 
        "Home", 
        pageLinkValueDictionary);

أتمنى تصحيح هذا GetVirtualpath(..) طريقة .. لمعرفة ما يحاول القيام به.

أفترض أنني بحاجة إلى الاستيلاء على الرموز من خادم رمز MS.

ما فعلت كان

  • اطفئه تمكين فقط التعليمات البرمجية
  • شغله تمكين دعم الخادم المصدر
  • إظهار وحدات نافذة عند تصحيح الأخطاء (لتحميل الوحدة الصحيح يدويا)

ترجمة في وضع التصحيح، ضع نقطة توقف على هذا الخط حول وتصحيح التشغيل. عندما تضغط على الخط، أنا تحميل يدويا System.Web.Routing(..) من خادم رمز MS.. وبعد هذه الأعمال (يتم تنزيل PDB محليا) وعندما أذهب إلى هذا السطر، أحصل على بعض رمز الخاطفة :(

هل يمكن لأي شخص أن يرى ما أفعله خطأ؟

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

المحلول

أن ملف الرموز يتم تنزيله لا يعني أن المصادر متاحة لذلك، يحتاج PDB إلى أن يكون مفهرسا للمصدر أيضا.

من إعلان سكوت غوثري:

سنبدأ بإعطاء شفرة المصدر (مع تعليقات ملف المصدر المضمنة) لمكتبات الفئة الأساسية .NET (النظام، النظام .io، System.collections، System.configuration، System.Threading، System.Net، System.Secority.Security.Security system.runtime، system.text، إلخ)، asp.net (system.web)، نماذج Windows (system.windows.forms)، ado.net (system.data)، xml (system.xml)، و wpf (النظام .شبابيك). سنقوم بعد ذلك بإضافة المزيد من المكتبات في الأشهر المقبلة (بما في ذلك WCF و Workflow و LinQ). سيتم إصدار شفرة المصدر ضمن ترخيص Microsoft Reference (MS-RL).

يبدو أن system.web.routing غير مدرج هنا.

لا يمكنك ذلك قم بتنزيل مصدر MVC, ، ثم يجب أن تكون قادرا على استخدام PDBs التي قمت بتنزيلها ضد هذا المصدر.

نصائح أخرى

رأيت شخصا ما يتم تعديله بالفعل لقول هذا، ولكن ...

لا يبدو أنه يمكنك الحصول على عرض على مستوى المصدر لما يحدث، ولكن إذا كنت بحاجة حقا إلى إجابة حول سبب عدم عمل شيء ما (ولا يمكن أن يساعد شيئا ما)، باستخدام العاكس للحصول على رمز C # من التجميع المترجم (DLL أو EXE) هو خيار جيد جدا. الأداة سهلة الاستخدام تماما لأي مطور من ذوي الخبرة ويمكن أن توفر بعض رؤى جيدة جدا في ما يحدث.

الكثير منا الذين يعملون في الحافة الرائدة .NET يحتاج لاستخدامه لأنه غالبا ما لا توجد طريقة سريعة أخرى، ولأولئك الذين بدون اتصالات MVP أو Microsoft-Side، فإنه عادة ما يكون فقط طريقة للحصول على "القصة الداخلية".

أنا مندهش قليلا قام بتنزيل ملف رمز لهذا؛ آخر مرة نظرت فيها، كانت هناك رموز فقط لمجموعة فرعية صغيرة (أساسا 2.0) من الإطار. هل تواجه مشكلة في هذا الرمز في الوقت الحالي؟ إذا كان الأمر كذلك، فقم بتفاصيل الاستثناء / السلوك غير المتوقع. إذا كنت مجرد فضول، فما أما: اقرأ توثيق, ، أو ب: ربما لديك سنوب مع العاكس (مذكرة قانونية: "IANAL.").

يبدو أنك تتحدث عن .NET، لذلك فهي في الواقع رمز بايت الذي تراه. لا أعتقد أن Microsoft يطلق الرموز مع شفرة المصدر ل .NET، لذلك لا يمكن مقابل VS مساعدتك.

استخدم .NET عاكس لفحص ما تفعله الوظيفة.

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