Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
F# 如何从FSharp提示符获取有关类型的信息_F#_F# Interactive_F# Data - Fatal编程技术网

F# 如何从FSharp提示符获取有关类型的信息

F# 如何从FSharp提示符获取有关类型的信息,f#,f#-interactive,f#-data,F#,F# Interactive,F# Data,我正在使用FSharp,并试图从FSharp.datalibrary中找到更多关于我正在使用的类型的信息。例如,我如何从FSharp交互提示中找出HttpMessageBody是否是一个有区别的联合体等?我相信这就是您要寻找的。我相信这就是您要寻找的。您可以使用反射.FSharpType中的方法来获取信息: 比如说 static member IsUnion : Type * ?BindingFlags -> bool 将告诉您类型是否为联合类型 模块中的更多功能是您可以使用Refle

我正在使用FSharp,并试图从FSharp.datalibrary中找到更多关于我正在使用的类型的信息。例如,我如何从FSharp交互提示中找出HttpMessageBody是否是一个有区别的联合体等?

我相信这就是您要寻找的。

我相信这就是您要寻找的。

您可以使用
反射.FSharpType
中的方法来获取信息:

比如说

 static member IsUnion : Type * ?BindingFlags -> bool
将告诉您类型是否为联合类型


模块中的更多功能是

您可以使用
Reflection.FSharpType
中的方法获取信息:

比如说

 static member IsUnion : Type * ?BindingFlags -> bool
将告诉您类型是否为联合类型


模块中的更多函数是

我不认为有一种简单的方法可以直接从F#interactive获取信息(但是,正如John Palmer所提到的,编写一个使用F#reflection获取信息并将其打印出来的辅助函数并不难)

但是,如果您使用的是Visual Studio或MonoDevelop(Xamarin Studio),则当您将鼠标悬停在编辑器中的类型名称上或在“自动完成”中找到它时,应在工具提示中看到所需的所有信息:


我不认为有一种简单的方法可以直接从F#interactive获取信息(但是,正如John Palmer所提到的,编写一个帮助函数来使用F#reflection获取这些信息并将其打印出来并不难)

但是,如果您使用的是Visual Studio或MonoDevelop(Xamarin Studio),则当您将鼠标悬停在编辑器中的类型名称上或在“自动完成”中找到它时,应在工具提示中看到所需的所有信息:


哇。这似乎是获取信息的一种相当迟钝的方式。我希望有类似python帮助函数的东西。有没有办法查看类型定义?哇。这似乎是获取信息的一种相当迟钝的方式。我希望有类似python帮助函数的东西。有没有办法查看类型定义?fsi的主要使用模式是在VS中编写代码并将其发送给fsi。这就是为什么没有进一步研究fsi本身的智能感知和自动完成功能的原因。fsi的主要使用模式是在VS中编写代码并将其发送给fsi。这就是为什么没有对fsi本身的智能感知和自动完成功能进行进一步研究的原因。