嗨,這裏是我正在嘗試做的事情,我有一個類(EventType),它可以是動態的,並在不同時間具有不同的成員/屬性。在運行時使用反射來獲取類的實例的屬性C#
class EventType
{
int id{set;}
string name{set;}
DateTime date{set;}
List<int> list{set;}
Guid guid{set;}
}
在我的主要方法,我在這個類中傳遞一個實例給一個函數在不同的類,並試圖反思來獲得實例,但它不是成功的特性,給我空值。
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);
}
}
關於你提到的「生成」的方法,我想知道什麼是不同外的開箱系列化? (二進制序列化,xml序列化或JSon)。你不應該依賴現有的序列化機制嗎? –
我試圖讓人們可以使用自己的序列化程序的方法,如果他們不提供一個我會繼續使用現有的一個 – MJSHARMA