Запитання з тегом «reflection»

Рефлексія - це здатність програми спостерігати та / або змінювати її структуру та / або поведінку під час виконання. Відображення залежить від підтримуючої мови програмування - будь ласка, позначте мову програмування, яка використовується при використанні цього тегу.

13
отримання типу T від IEnumerable <T>
є спосіб для отримання типу Tз IEnumerable&lt;T&gt;допомогою відображення? напр у мене є змінна IEnumerable&lt;Child&gt;інформація; Я хочу знайти тип дитини через рефлексію
106 c#  generics  reflection 

4
Відбиття Java - вплив setAccessible (true)
Я використовую деякі примітки для динамічного встановлення значень полів у класах. Оскільки я хочу це зробити незалежно від того, є він публічним, захищеним чи приватним, я setAccessible(true)кожен раз звертаюся до об'єкта Field перед тим, як викликати set()метод. Моє запитання - який вплив має setAccessible()виклик на саме поле? Більш конкретно, скажімо, …
105 java  reflection 

19
Визначте, чи працює код як частина одиничного тесту
У мене є одиничний тест (nUnit). У багатьох шарах вниз стек виклику метод вийде з ладу, якщо він працює через тест одиниці. В ідеалі ви б використали щось на кшталт глузування, щоб встановити об'єкт, від якого залежить цей метод, але це третій код, і я не можу зробити це без …
105 c#  reflection  nunit 

10
Проблема з завантаженням AssemblyVersion на веб-сторінку за допомогою Razor / MVC3
Я використовую такий код у нижньому колонтитулі у своєму файлі _Layout.cshtml для розміщення даних версії AssemblyInfo у нижньому колонтитулі кожної сторінки на моєму сайті MVC3. Однак: @System.Reflection.Assembly.GetExecutingAssembly().GetName().Version.ToString() Просто друкує у нижньому колонтитулі: Revision 0.0.0.0 Коли я змінив вигляд, щоб відобразити всю інформацію про збірку для "Виконання збірки", використовуючи наступне @System.Reflection.Assembly.GetExecutingAssembly().GetName().ToString() …


8
Як я можу отримати список стовпців у таблиці для бази даних SQLite?
Я шукаю отримати список стовпців у таблиці. База даних - це останній випуск SQLite (я вважаю, 3.6). Я шукаю код, який робить це за допомогою SQL-запиту. Додаткові бонусні бали за метадані, пов’язані зі стовпцями (наприклад, довжина, тип даних тощо).
102 reflection  sqlite  list 

8
Уникнення instanceof в Java
Наявність ланцюжка операцій "instanceof" вважається "запахом коду". Стандартна відповідь - «використовувати поліморфізм». Як би я це зробив у цьому випадку? Існує ряд підкласів базового класу; жоден з них не під моїм контролем. Аналогічна ситуація була б з класами Java Integer, Double, BigDecimal тощо. if (obj instanceof Integer) {NumberStuff.handle((Integer)obj);} else if …

4
Додайте властивість до анонімного типу після створення
Я використовую анонімний об'єкт, щоб передати свої атрибути Html деяким допоміжним методам. Якщо споживач не додав атрибут ідентифікатора, я хочу додати його у своєму допоміжному методі. Як я можу додати атрибут до цього анонімного об’єкта?

7
Яка різниця між a.getClass () та A.class у Java?
На Java які плюси та мінуси існують навколо вибору використовувати a.getClass()чи A.class? Можна використовувати будь-коли, де Class&lt;?&gt;очікується, але я думаю, що використання та інше вигідне використання в обох обставинах (як і у випадку з Class.forName()і в) ClassLoader.loadClass().
101 java  class  reflection 

2
Як отримати назву функції в Go?
Враховуючи функцію, чи можна отримати її назву? Сказати: func foo() { } func GetFunctionName(i interface{}) string { // ... } func main() { // Will print "name: foo" fmt.Println("name:", GetFunctionName(foo)) } Мені сказали, що runtime.FuncForPC допоможе, але я не зрозумів, як ним користуватися.

3
Як обмежити setAccessible лише "законними" використаннями?
Чим більше я дізнався про силу java.lang.reflect.AccessibleObject.setAccessible, тим більше я здивований тим, що вона може зробити. Це адаптовано з моєї відповіді на питання ( Використання відображення для зміни статичного остаточного File.separatorChar для тестування одиниць ). import java.lang.reflect.*; public class EverythingIsTrue { static void setFinalStatic(Field field, Object newValue) throws Exception { …

3
діапазон інтерфейсу {}, в якому зберігається фрагмент
Враховуючи сценарій, коли у вас є функція, яка приймає t interface{}. Якщо визначено, що tце фрагмент, як мені rangeперевищити цей фрагмент? func main() { data := []string{"one","two","three"} test(data) moredata := []int{1,2,3} test(data) } func test(t interface{}) { switch reflect.TypeOf(t).Kind() { case reflect.Slice: // how do I iterate here? for _,value …


4
Як запобігти ReflectionTypeLoadException при виклику Assembly.GetTypes ()
Я намагаюся відсканувати збірку для типів, що реалізують певний інтерфейс, використовуючи код, подібний до цього: public List&lt;Type&gt; FindTypesImplementing&lt;T&gt;(string assemblyPath) { var matchingTypes = new List&lt;Type&gt;(); var asm = Assembly.LoadFrom(assemblyPath); foreach (var t in asm.GetTypes()) { if (typeof(T).IsAssignableFrom(t)) matchingTypes.Add(t); } return matchingTypes; } Моя проблема полягає в тому, що я отримую …

4
Створення екземпляра типу без конструктора за замовчуванням у C # за допомогою відображення
Візьмемо такий приклад як приклад: class Sometype { int someValue; public Sometype(int someValue) { this.someValue = someValue; } } Потім я хочу створити екземпляр цього типу за допомогою відображення: Type t = typeof(Sometype); object o = Activator.CreateInstance(t); Зазвичай це спрацьовує, однак, оскільки SomeTypeне визначено конструктор без параметрів, виклик Activator.CreateInstanceвидає виняток …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.