Jim*_*yrd 5 .net c# f# system.reflection
有没有办法在C#中检查对象是否是运行时的F#记录类型而不引用FSharp.Core库?
记录类型[<CompilationMapping(SourceConstructFlags.RecordType)>]在编译时标记为属性.这是FSharpType.IsRecord寻找的,你可以在这里看到实现.受歧视的工会以类似的方式得到标记.
可以在不FSharp.Core明确引用任何类型的情况下重新实现该逻辑,即您可以按名称查找属性并拥有自己的SourceConstructFlags枚举副本以匹配属性数据.