我有这样的课程:
type IInterface = {}
type BaseClass<'Data, 'TMeta> =
{
Data : 'Data
Meta : 'TMeta
}
interface IInterface with
...
type Record = {
Value: string
}
type MyType = BaseClass<Record, unit>
现在,在我的.Net Core应用程序中,我有一个扩展程序可以进行一些注册:
[<Extensio>]
static member Register<'t when 't :> IInterface>(...) =
services.AddSingleton<Configuration<'t>>()
services.Register<MyType>()
在我的配置中
type Configuration<'t when 't :> IInterface> ()
let tp = typedefof<'t>.GetGenericArguments()
...
我无法在运行时访问通用参数,因为它们被视为System.Runtime
,而我希望可以访问MyType