通过引用传递到 C# 代码时,可空值不会被修改
我有一个 F# 变量定义如下
let id = new Nullable<int>()
,我将其从 F# 传递到一个 C# 函数,该函数采用 ref Nullable
,然后为其分配一个值(它基本上是自动存储过程代码)由 Linq2Sql 生成)。
不幸的是,当函数调用退出时,我的 id 变量仍然没有值(即为 null)。 我尝试将其声明为可变的,但 F# 抱怨我无法在闭包中使用可变变量。
有人可以帮忙吗? 谢谢!
I have an F# variable defined as follows
let id = new Nullable<int>()
and I am passing it from F# into a C# function that takes a ref Nullable<int>
and, subsequently, assigns it a value (it's basically stored procedure code auto-generated by Linq2Sql).
Unfortunately, when the function call exits, my id
variable still has no value (i.e., is null). I've tried declaring it as mutable
but F# complains that I cannot use mutable variables in closures.
Can someone help? Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
C#:
F#:(
也可参见 http://lorgonblog.spaces。 live.com/blog/cns!701679AD17B6D310!677.entry)
C#:
F#:
(potentially see also http://lorgonblog.spaces.live.com/blog/cns!701679AD17B6D310!677.entry)