こんにちは、これが私がやろうとしていることです。私は、動的になり、異なる時点で異なるメンバー/プロパティを持つことができるクラス (EventType) を持っています。
class EventType
{
int id{set;}
string name{set;}
DateTime date{set;}
List<int> list{set;}
Guid guid{set;}
}
私のメインメソッドでは、このクラスのインスタンスを別のクラスの関数に渡し、リフレクションを試みてインスタンスのプロパティを取得しようとしていますが、成功せず、null 値が返されます。
class Program
{
static void Main(string[] args)
{
EventType event1 = new EventType();
int rate = 100;
DataGenerator.Generate<EventType>(event1, rate);
}
public static byte[] test(EventType newEvent)
{
return new byte[1];
}
}
static class DataGenerator
{
public static void Generate<T>(T input, int eventRate, Func<T, byte[]> serializer=null)
{
Type t = input.GetType();
PropertyInfo[] properties = t.GetProperties();
foreach (PropertyInfo property in properties)
{
Console.WriteLine(property.ToString());
}
var bytes = serializer(input);
}
}