كيفية الحصول على قيمة المعلمة من StackTrace [نسخة مكررة]

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

سؤال

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

var st = new StackTrace();
var frames = st.GetFrames();
var methodParameters = frame[2].GetMethod().GetParameters;
// get each parameter value

ملحوظة:استخدام StackTraceليس إلزامي.

هل هناك طريقة للعثور على قيمة المعلمة التي تم تمريرها إلى طريقة أثناء وقت التشغيل؟

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

المحلول

لا أعتقد أن هناك طريقة إلا إذا قمت بتطوير نظامك الخاص لتخزين القيم.

تمثل مساحة اسم الانعكاس ثابتة بيانات حول التجميع، وسوف تحتاج إلى استرداد القيم في وقت التشغيل.

وجدت بوستشارب المذكورة في منتديات MSDN، ولكن لم أجربه مطلقًا.

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