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

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

16
Type.GetType (“space names.abClassName”) повертає null
Цей код: Type.GetType("namespace.a.b.ClassName") повертає null. і я маю в узінгах: using namespace.a.b; Оновлення: Тип існує, він знаходиться в бібліотеці іншого класу, і мені потрібно отримати його за назвою рядка.
216 c#  reflection 

13
Наскільки дорого коштує відображення .NET?
Я постійно чую, як погана рефлексія використовувати. Хоча я взагалі уникаю роздумів і рідко знаходжу ситуації, коли неможливо вирішити свою проблему без цього, мені було цікаво ... Тим, хто використовував рефлексію в додатках, ви оцінювали ефективність і чи справді це так погано?

6
Як отримати список властивостей із заданим атрибутом?
У мене є тип, tі я хотів би отримати список публічних властивостей, які мають атрибут MyAttribute. Атрибут позначений AllowMultiple = falseтаким чином: [AttributeUsage(AttributeTargets.Property, AllowMultiple = false)] На даний момент у мене це, але я думаю, що є кращий спосіб: foreach (PropertyInfo prop in t.GetProperties()) { object[] attributes = prop.GetCustomAttributes(typeof(MyAttribute), true); …
210 c#  .net  reflection 

13
Отримайте назву властивості у вигляді рядка
(Дивіться нижче рішення, яке я створив, використовуючи відповідь, яку я прийняв) Я намагаюся покращити ремонтопридатність якогось коду, що включає рефлексію. У додатку є інтерфейс видалення .NET, що відкриває (серед іншого) метод, який називається Execute для доступу до частин програми, які не входять до його опублікованого віддаленого інтерфейсу. Ось як додаток …

13
Чи можете ви використати роздуми, щоб знайти ім'я поточного методу виконання?
Як заголовок зазначає: Чи може відображення дати вам ім'я поточного методу виконання. Я схильний не здогадуватися, через проблему Гейзенберга. Як ви називаєте метод, який підкаже вам поточний метод, не змінюючи того, що є поточним методом? Але я сподіваюся, що хтось може довести мене неправильно там. Оновлення: Частина 2: Чи можна …
202 .net  reflection 



9
Рефлексія: Як викликати метод із параметрами
Я намагаюся викликати метод через відображення з параметрами, і я отримую: об'єкт не відповідає цільовому типу Якщо я викликаю метод без параметрів, він справно працює. На основі наступного коду, якщо я називаю методTest("TestNoParameters") , він працює добре. Однак якщо я телефоную Test("Run"), я отримую виняток. Щось не так у моєму …

7
Перевірте, чи об’єкт класу є підкласом іншого об’єкта класу на Java
Я граю з API відбиття Java і намагаюся обробити деякі поля. Тепер я застряг у визначенні типу моїх полів. Струни легкі, просто робіть myField.getType().equals(String.class). Те саме стосується інших не похідних класів. Але як перевірити похідні класи? Наприклад, LinkedListяк підклас List. Я не можу знайти жодного способу isSubclassOf(...)чи extends(...)методу. Чи потрібно …
197 java  class  reflection 

4
Яка різниця між getFields та getDeclaredFields у відображенні Java
Я трохи заплутаний у різниці між getFieldsметодом та getDeclaredFieldsметодом при використанні відображення Java. Я читаю, що getDeclaredFieldsнадає вам доступ до всіх полів класу, і getFieldsповертає лише загальнодоступні поля. Якщо це так, то чому б ви не завжди використовували getDeclaredFields? Чи може хтось, будь ласка, детальніше розглянути це і пояснити різницю …
195 java  reflection 

2
Чому знаходження ініціалізатора типу кидає NullReferenceException?
Це мене наткнуло. Я намагався оптимізувати деякі тести для Noda Time, де у нас є перевірка типу ініціалізатора. Я подумав, що я дізнаюся, чи є у типу ініціалізатор типу (статичний конструктор або статичні змінні з ініціалізаторами), перш ніж завантажувати все в нове AppDomain. На мій подив, невеликий тест цього викинув …

5
Отримання назви збірки
Клас винятків C # має властивість джерела, яке встановлено за назвою збірки за замовчуванням. Чи є інший спосіб отримати цей точний рядок (без розбору іншого рядка)? Я спробував таке: catch(Exception e) { string str = e.Source; //"EPA" - what I want str = System.Reflection.Assembly.GetExecutingAssembly().FullName; //"EPA, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" str = …

3
BindingFlags.IgnoreCase не працює для Type.GetProperty ()?
Уявіть наступне Тип T має поле Компанія. При виконанні наступного методу він відмінно працює: Type t = typeof(T); t.GetProperty("Company") У наступному дзвінку я отримую недійсне значення Type t = typeof(T); t.GetProperty("company", BindingFlags.IgnoreCase) Хтось отримав ідею?

12
Інструмент для створення схеми JSON з даних JSON [закрито]
Зачинено. Це питання не відповідає вказівкам щодо переповнення стека . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для переповнення стека. Закрито 3 роки тому . Удосконаліть це питання У нас є схеми JSon проект . Я хотів би отримати зразок моїх даних JSON …


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