![]() |
1
2
我认为一种明确的功能性方法是定义一种数据类型,它表示您需要处理的各种(更复杂的情况)。您提到一个值可能是可选的,并且您需要区分数值和文本值(对于SQL编码)。 您可以定义一个有区别的联合(如果您希望处理其他情况,则定义可能会更复杂一些):
请注意
你的
在生成SQL查询的代码中,您将使用模式匹配来处理所有不同的情况(最重要的是,如果值为
编辑
您需要实现从特定数据类型到
在执行
更复杂的方法是用.NET属性注释表示数据实体的类型的公共成员,并使用反射在运行时提取值(及其类型)。这是更先进的,但相当优雅(这是一个很好的例子,在唐赛姆的专家F书) |
![]() |
2
3
您可以在匹配中使用类型测试模式。这能满足你的需要吗?
|
![]() |
Kon · OCaml中的模块类型语义 6 月前 |
![]() |
user20102550 · 如何在解析器中使用输入字符串 11 月前 |
![]() |
tijko · 处理整数数组时出现意外结果 1 年前 |
![]() |
David542 · 按列分区,按另一列排序 1 年前 |
|
Arnett Rufino · `max的输出是多少` 1 年前 |
![]() |
Adrian · 变量捕获:变量在函数闭包中的行为 1 年前 |