Как получить доступ к объекту типа класса из статического метода (то есть, что-то вроде typeof(this))?
Здравствуйте, Emstem, Вы писали:
E>Как получить доступ к объекту типа класса из статического метода (то есть, что-то вроде typeof(this))?
Можно попробовать через StackFrame (просто идея)
... << RSDN@Home 1.0 beta 6a | Сейчас вторник, 19:04, слушаю тишину >>
Здравствуйте, orangy, Вы писали:
O>Здравствуйте, Emstem, Вы писали:
E>>Как получить доступ к объекту типа класса из статического метода (то есть, что-то вроде typeof(this))?
O>Можно попробовать через StackFrame (просто идея)
Примерно так, код не проверен:
StackTrace st = new StackTrace();
MethodBase mb = st.GetFrame(0).GetMethod();
Type t = mb.ReflectedType;
... << RSDN@Home 1.0 beta 6a | Сейчас вторник, 19:04, слушаю тишину >>
Здравствуйте, Emstem, Вы писали:
E>Как получить доступ к объекту типа класса из статического метода (то есть, что-то вроде typeof(this))?
Как вариант можно вот так:
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType
Здравствуйте, Lloyd, Вы писали:
L>Здравствуйте, Emstem, Вы писали:
E>>Как получить доступ к объекту типа класса из статического метода (то есть, что-то вроде typeof(this))?
L>Как вариант можно вот так:
L>L>System.Reflection.MethodBase.GetCurrentMethod().DeclaringType
L>
Да, спасибо, это то, что нужно.
E>Как получить доступ к объекту типа класса из статического метода (то есть, что-то вроде typeof(this))?
Работает, но медленно:
new System.Diagnostics.StackFrame().GetMethod().DeclaringType
Лучше вызывать один раз и потом использовать, бо тормозит.
... << RSDN@Home 1.0 beta 6a >>