C# 反射:发出日期时间属性值
本文关键字:时间 属性 日期 反射 | 更新日期: 2023-09-27 18:35:43
我目前正在使用Reflection.Emit生成动态类型。
我有我需要的大部分工作,但是需要在构造函数中设置默认属性值。
到目前为止,我已经通过例如使用(为简洁起见而减少)来为整数和字符串工作:
ctorDefaultIL.Emit(OpCodes.Ldstr, "Hello World");
ctorDefaultIL.Emit(OpCodes.Ldc_I4, 42);
这非常有效,我的问题是我将如何设置日期时间值。
感谢@leppie未来的参考,这是我最终使用的代码。对于某些上下文,这被传递到另一个方法中:
ctorDefaultIL.Emit(OpCodes.Ldc_I8, dateVal.Ticks);
ctorDefaultIL.Emit(OpCodes.Newobj,
typeof(DateTime).GetConstructor(new[] { typeof(long) }));