I have an interface, and some classes that inherit from it.
public interface IFoo {}
public class Bar : IFoo {}
public class Baz : IFoo {}
If I get the types which implement IFoo, how can I decide if the type will represent a Bar or a Baz (without actually creating the object)?
// Get all types in assembly.
Type[] theTypes = asm.G...
Let's say we have these two classes:
public class Base
{
public static int GetInt() { return 1; }
}
public class Derived : Base
{
}
Let's also say that a piece of code calls Derived.GetInt(). How can I tell from within GetInt() that it was Derived.GetInt() and not Base.GetInt() that was called? What reflection technique do I use...
I need to know if there's any way (or another distinct approach) to an attribute knows something about what is being decorated for him. For example:
class Cat
{
public Cat() { }
[MyAttribute]
public House House { get; set; }
}
Inside MyAttribute I must do some preprocessing with the house object...
class MyAttribute : At...
A colleague asked me an interesting question today - is the C# keyword/operator "is" considered reflection?
object tmp = "a string";
if(tmp is String)
{
}
How is this operator implemented behind the scenes? Does it require reflection or introspection? Or because of the strongly typed nature of the language, is the Type of the object ...
I have an array of reflectionClasses.
I need to get a reflectionObject from one of these and then call its constructor with some parameters.
The point is to instantiate an object without knowing the class name (i'll know it at runtime).
Example, just to render the idea:
foreach (Conf::get_array() as $reflection_class) {
//it's n...
Hi,
I have a function that receive a type and returns true or false.
I need to find out what are all types in a certain namespace that that function will return true for them.
Thanks.
...
In a project of mine I'm currently doing this:
addTemplateToList(New docNULL)
addTemplateToList(New docAgenda)
addTemplateToList(New docAgendaNew)
addTemplateToList(New docOffer)
:
20 more
:
addTemplateToList(New docRequest)
all classes inherit docMain and addTemplateToList( X ) adds x to a List(Of do...
Sample console program.
class Program
{
static void Main(string[] args)
{
// ... code to build dll ... not written yet ...
Assembly assembly = Assembly.LoadFile(@"C:\dyn.dll");
// don't know what or how to cast here
// looking for a better way to do next 3 lines
IRunnable r = assembly.Crea...
In .Net, given a type name, is there a method that tells me in which assembly (instance of System.Reflection.Assembly) that type is defined?
I assume that my project already has a reference to that assembly, just need to know which one it is.
...
Lets say I have two classes:
class A
{
[SortOrder(3)]
public string Name { get; set; }
}
class B : A
{
[SortBefore(*****)]
public string Age { get; set; }
}
Note the stars in the property attribute in the second class. Would it somehow (using expressions I guess) be possible to specify A.Name in the SortBefore attribute? ...
I have a generic interface, say IGeneric. For a given type, I want to find the generic arguments which a class imlements via IGeneric.
It is more clear in this example:
Class MyClass : IGeneric<Employee>, IGeneric<Company>, IDontWantThis<EvilType> { ... }
Type t = typeof(MyClass);
Type[] typeArgs = GetTypeArgsOfInterfacesOf(t);
// At...
Hi,
I have an application I need to analyze. I have the source code here. I already found a way to log the method calls using this code:
Inside Method: logger.MethodTraceLog();
public void MethodTraceLog()
{
var msg = "MethodTraceLog: "
+ this.log.Logger.Name
+ " ### "
+ new StackFr...
I have code I'm working on to instantiate a CRC algorithm dependent on a polynomial passed in, and a string s that contains "crc8" or "crc16" or "crc32".
The classes CRC8, CRC16, and CRC32 all extend a class CRC and implement an interface HashAlgorithm. Each of them has a constructor CRCx(int polynomial).
My problem is, I get this erro...
In my web application framework (currently WebForms) I have a control that behaves like a classic propertygrid. It is initialized with an object ID (database key), then it reads metadata to determine the type of the object and the attributes of the object. It displays the attributes, string attributes as textboxes, bool attributes as che...
Often I will send debugging info to my log file from within Java, and it helps to give decent information as to where in the code the log message was generated so I can quickly refer back to it. I don't want to hard-code anything in the log message about its location, because I have to remember to update the log message if I rename its ...
In C# I have the following object:
public class Item
{ }
public class Task<T>
{ }
public class TaskA<T> : Task<T>
{ }
public class TaskB<T> : Task<T>
{ }
I want to dynamically create TaskA or TaskB using C# reflection (Activator.CreateInstance). However I wouldn't know the type before hand, so I need to dynamically create TaskA bas...
I am trying to automatically convert object's properties to DataTable (object is array and has properties that instantiated from special class which has value type).
The code:
static public DataTable f_GetDataTableFromClassObject(object _objInstance)
{
// geri dönecek datatable
DataTable dataTable = new DataTable();
// ne...
I'm trying to use reflection to set properties on some OpenXML types (e.g. Justification). Assigning a value by enumerating all possibilities is straight-forward:
// attr is an XmlAttribute, so .Name and .Value are Strings
if (attr.Name == "Val")
{
if (element is Justification)
{
((Justification)element).Val = (Justific...
Hi
I am using the Reflection classes in order to get all the fields inside a certain object.
My problem however is that it works perfectly when the fields are inside a normal class, like:
class test
{
string test1 = string.Empty;
string test2 = string.Empty;
}
Here i get both test1 and test2, my problem is that i use abstractio...
Is it possible to get a Type via Type.GetType() when the assembly-qualified name passed into GetType() specifies a different Version than the version of the DLL that's actually loaded? If so, what is the behavior of GetType()?
I want to get a Type from an assembly regardless of what version the assembly is. I have a function which gets ...