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
Linq to sql F#Linq到sql-调用存储过程_Linq To Sql_F# - Fatal编程技术网

Linq to sql F#Linq到sql-调用存储过程

Linq to sql F#Linq到sql-调用存储过程,linq-to-sql,f#,Linq To Sql,F#,我在这里使用了视图,以前在某些参数中不需要我,但现在我需要它,它失败了,或者我做错了什么 以下是我的尝试: member X.CountStatistics ha = <@ linq.IncidentStatistix(ha) @> |> query |> Seq.map (fun s -> s.Name, s.Stat) |> Array.ofSeq 我做错了什么?调用存储过程(作为DataContext的方法公开)时,

我在这里使用了视图,以前在某些参数中不需要我,但现在我需要它,它失败了,或者我做错了什么

以下是我的尝试:

member X.CountStatistics ha = 
    <@ linq.IncidentStatistix(ha) @>
    |> query 
    |> Seq.map (fun s -> s.Name, s.Stat)
    |> Array.ofSeq

我做错了什么?

调用存储过程(作为
DataContext
的方法公开)时,不需要将调用包装在引号中。它可以作为普通方法执行(无需
query
):

您还可以使用序列理解法
seq{…}
或数组理解法
[|…|]
,以使附加处理(可能)稍微好一点:

member X.CountStatistics ha = 
    [| for s in linq.IncidentStatistix(ha) -> s.Name, s.Stat |]
member X.CountStatistics ha = 
    linq.IncidentStatistix(ha)
    |> Seq.map (fun s -> s.Name, s.Stat)    
    |> Array.ofSeq
member X.CountStatistics ha = 
    [| for s in linq.IncidentStatistix(ha) -> s.Name, s.Stat |]