reflection- все статьи тега


Как обнаружить свойства объектов разработки abap?

Я пришел из мира java, и я хотел бы знать, есть ли что-нибудь, что может помочь мне понять свойства объектов разработки abap.... что-то вроде отражения. Зная, что все, что происходит в ABAP, сохраняется где-то внутри базы данных, я хотел бы знать, как бы я узнал, как и где сохраняется объект. Например, я хотел бы знать, существуют ли какие-либо функции, которые перечисляют поля структуры или перечисляют свойства объекта, или если нет такой вещи (но свойства все еще существуют очевидно), то как ...

c# - различные типы при загрузке из сборки с использованием отражения

У меня есть решение с 3 проектами: 1) графический исполняемый файл 2) библиотека классов, содержащая открытый API и открытый интерфейс. 3) библиотека классов класса, реализующего указанный выше интерфейс Я пытаюсь реализовать загрузчик ресурсов в API, так что когда графический интерфейс вызывает метод API.Foo(), я просматриваю каждую сборку в определенной папке (найдено по адресу: . resources), который содержит копию сборок, которые я скомпилировал (#3). Затем я хочу добавить ресурс в список ...

Лучший способ получить дополнительные свойства с помощью GetProperty

public class Address { public string ZipCode {get; set;} } public class Customer { public Address Address {get; set;} } Как я могу получить доступ к "ZipCode"или" Address.Индекс" с отражением? Например: Typeof(Customer).GetProperty("ZipCode")? ...

Что такое BindingFlags.Предназначен предназначен для?

У меня есть следующий код, используемый, чтобы избежать оператора switch, чтобы решить, какой метод вызывать, и он работает только с флагами BindingFlags, которые я установил, без InvokeMethod. Для чего на самом деле предназначен InvokeMethod и почему он не нужен в следующем коде: public enum PublishMethods { Method1, Method2, Method3 } private void Form1_Load(object sender, EventArgs e) { InvokePublishMethod(PublishMethods.Method2); } private void InvokePublishMethod(PublishM ...

Я хочу получить тип переменной во время выполнения

Я хочу получить тип переменной во время выполнения. Как мне это сделать? ...

Получение нового экземпляра объекта из типа

можно не всегда узнать тип объекта во время компиляции, но может потребоваться создать экземпляр типа. Как получить новый экземпляр объекта из типа? ...

Получение всех типов, реализующих интерфейс

используя отражение, как я могу получить все типы, которые реализуют интерфейс с C# 3.0/.NET 3.5 с наименьшим кодом и минимизацией итераций? вот что я хочу переписать: foreach (Type t in this.GetType().Assembly.GetTypes()) if (t is IMyInterface) ; //do stuff ...

Получение имени текущего выполняемого метода

есть ли способ получить имя текущего выполняемого метода в Java? ...

Получение атрибутов значения перечисления

Я хотел бы знать, можно ли получить атрибуты значений перечисления, а не самого перечисления? Например, предположим, что у меня есть следующее перечисление: using System.ComponentModel; // for DescriptionAttribute enum FunkyAttributesEnum { [Description("Name With Spaces1")] NameWithoutSpaces1, [Description("Name With Spaces2")] NameWithoutSpaces2 } то, что я хочу, задается типом перечисления, создает 2-кортежи строкового значения перечисления и его описание. значение б ...

Как использовать отражение для вызова частного метода?

в моем классе есть группа частных методов, и мне нужно вызвать один динамически на основе входного значения. И вызывающий код, и целевые методы находятся в одном экземпляре. Код выглядит так: MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType); dynMethod.Invoke(this, new object[] { methodParams }); в этом случае GetMethod() не возвращает частные методы. Что BindingFlags мне нужно поставить, чтобы GetMethod() Так что он может найти частные методы? ...

Что может вызвать Java.ленг.отражать.InvocationTargetException?

Ну, я пытался понять и прочитать, что может вызвать это, но я просто не могу этого понять: у меня это где-то в мой код: try{ .. m.invoke(testObject); .. } catch(AssertionError e){ ... } catch(Exception e){ .. } дело в том, что, когда он пытается вызвать какой-то метод бросает InvocationTargetException вместо некоторых других ожидаемых исключений (в частности ArrayIndexOutOfBoundsException). Поскольку я действительно знаю, какой метод вызывается, я пошел прямо к этому коду метода и ...

Как добавить отражение в приложение на C++?

Я хотел бы иметь возможность интроспекции класса C++ для его имени, содержимого (т. е. членов и их типов) и т. д. Я говорю здесь родной C++, а не управляемый C++, который имеет отражение. Я понимаю, что C++ предоставляет некоторую ограниченную информацию с помощью RTTI. Какие дополнительные библиотеки (или другие методы) могут предоставить эту информацию? ...

Почему поиск инициализатора типа вызывает исключение NullReferenceException?

это поставило меня в тупик. Я пытался оптимизировать некоторые тесты для времени Noda, где у нас есть проверка инициализатора типа. Я думал, что узнаю, есть ли тип и инициализатор типа (статический конструктор или статические переменные с инициализаторами) перед загрузкой всего в новый AppDomain. К моему удивлению, небольшой тест на это бросил NullReferenceException - несмотря на отсутствие нулевых значений в мой код. Это только выдает исключение, когда скомпилирован без отладочной информации. ...

Как получить список свойств с заданным атрибутом?

у меня есть тип, t, и я хотел бы получить список публичных свойств, которые имеют атрибут MyAttribute. Атрибут помечен символом AllowMultiple = false, например: [AttributeUsage(AttributeTargets.Property, AllowMultiple = false)] В настоящее время у меня есть это, но я думаю, что есть лучший способ: foreach (PropertyInfo prop in t.GetProperties()) { object[] attributes = prop.GetCustomAttributes(typeof(MyAttribute), true); if (attributes.Length == 1) { //Property with my c ...

Тип.GetType ("пространство имен.a. b. ClassName") возвращает null

этот код: Type.GetType("namespace.a.b.ClassName") возвращает null. а у меня в употреблении: using namespace.a.b; обновление: тип существует, он находится в другой библиотеке классов, и мне нужно получить его по имени строки. ...

Отражение: как вызвать метод с параметрами

Я пытаюсь вызвать метод через отражение с параметрами, и я получаю: объект не соответствует целевому типу если я вызываю метод без параметров, он отлично работает. На основе следующего кода, если я вызываю метод Test("TestNoParameters"), он работает нормально. Однако если я позвоню Test("Run"), Я получаю исключение. Что-то не так с моим кодом? моей первоначальной целью было передать массив объектов, например,public void Run(object[] options) но это не сработало и я попробовал что-то более ...

Как получить имя и тип вызывающего метода с помощью отражения? [дубликат]

Возможные Дубликаты:как я могу найти метод, который вызвал текущий метод? Я хотел бы написать метод, который получает имя вызывающего метода и имя класса, содержащего вызывающий метод. возможно ли это с отражением C#? ...

Проверить, если класс является подклассом другого класса в Java

Я играю с API отражения Java и пытаюсь обрабатывать некоторые поля. Теперь я застрял с определением типа моих полей. Строки легко, просто сделать myField.getType().equals(String.class). То же самое относится и к другим не производным классам. Но как проверить производные классы? Е. Г. LinkedList как подкласс List. Я не могу найти isSubclassOf(...) или extends(...) метод. Мне нужно пройти через все getSuperClass() и найти мой супекласс самостоятельно? ...

Получение имени сборки

класс исключений C#имеет свойство source, которое по умолчанию имеет имя сборки. Есть ли другой способ получить эту точную строку (без разбора другую строку)? Я пробовал следующие: 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 = typeof(Program).FullName; //"EPA.Program" str = typeof(Program ...