小编Art*_*eef的帖子

我什么时候需要调用"ConvertToGenerated"成员来使用类型提供程序生成类型

我很难解读Type Provider Tutorial的"提供生成的类型"部分.本教程提供以下规范.

"您还必须在根提供的类型上调用ConvertToGenerated,其嵌套类型形成一组生成的类型.此调用将给定的提供的类型定义及其嵌套类型定义发送到程序集中,并调整所有提供的类型定义的Assembly属性以返回只有在第一次访问根类型的Assembly属性时才会发出程序集.主机F#编译器在处理该类型的生成类型声明时会访问此属性.

我不知道在哪里放置ConvertToGenerated调用,我不确定汇编文件名参数的要求.有人能提供一个例子吗?谢谢.

f# type-providers

6
推荐指数
1
解决办法
252
查看次数

使用F#3.0进行动态SQL查询?

我曾尝试使用FLINQ,但它与F#3.0测试版相比已经过时了.

有人可以给我一些关于如何在F#中创建动态SQL查询的指针吗?

sql f#

4
推荐指数
2
解决办法
1361
查看次数

deepMacroExpandUntil发生了什么

FLINQ和Quotation Visualizer示例使用了这个函数,但我无法在任何地方找到它.谢谢.

f# quotations

3
推荐指数
1
解决办法
127
查看次数

这是在查询中对十进制值类型求和的最佳方法吗?

当我执行以下查询时,我得到一个错误,该查询总结了一个不可为空的小数.当位置/组织组合没有幅度值时,幅度为零.

let q = query { from m in Measure do
                  where (locations.Contains(m.Location) 
                         && organizations.Contains(m.Organization))
                  sumBy m.Magnitude }
Run Code Online (Sandbox Code Playgroud)

错误:无法将null值分配给类型为System.Decimal的成员,该成员是非可空值类型.

我用以下方式解决了这个问题.这有更好的方法吗?

let convert (n:Nullable<decimal>) =
        let c:decimal = 0M
        if n.HasValue then n.Value else c

let q = query { from m in Measure do
                  let nullable = Nullable<decimal>(m.Magnitude)
                  where (locations.Contains(m.Location) 
                         && organizations.Contains(m.Organization))
                  sumBy (convert(nullable)) }
Run Code Online (Sandbox Code Playgroud)

谢谢.我将查询更改为以下内容.

query {  for m in db.Measurement do
                let nullable = Nullable<decimal>(m.Magnitude)
                where ( m.Measure = me 
                        && (if slice.Organization > 0L then organizationUnits.Contains( m.PrimalOrganizationUnit.Value …
Run Code Online (Sandbox Code Playgroud)

f#

2
推荐指数
1
解决办法
257
查看次数

为什么RatNum没有ToDecimal()方法?

我想将RatNum表达式转换为Dot Net小数.RatNum有一个ToDecimalString方法,但不是ToDecimal方法.这有什么理由吗?除了Decimal.Parse(ratnum.ToDecimalString(2))之外还有其他方法可以将RatNum转换为小数吗?谢谢.

.net z3

1
推荐指数
1
解决办法
100
查看次数

标签 统计

f# ×4

.net ×1

quotations ×1

sql ×1

type-providers ×1

z3 ×1