nic*_*las 14 f# type-providers
是否有任何陷阱我应该注意这样做?
你知道我可能遇到的同一个pb的现有代码吗?
THKS
Tom*_*cek 13
遗憾的是,您无法将类型作为静态参数传递给类型提供程序.使用的静态参数MyProvider< "first argument", 42 >必须是原始类型(如string,int类似).我没有在文档中的任何位置看到该列表,但Type绝对不受支持.
有这样做的问题是,你可以通过它typeof<MyType>,其中MyType在同一个文件做为所使用的类型提供者,所以F#编译器必须首先编译文件的第一部分的文件中声明,然后调用提供程序,然后继续.这听起来有可能,但它可能是F#团队的低优先级.
将有关类型的信息传递给类型提供程序的最佳方法是为其提供类型名称,然后使用反射查找类型(这仅在类型来自已编译的程序集时才有效):
type MyTest = MyTypeProvider<"System.Int32">
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
609 次 |
| 最近记录: |