【问题标题】:Closure Syntax Error F#闭包语法错误 F#
【发布时间】:2018-07-17 23:39:29
【问题描述】:

我正在尝试从存储库中实现以下 C# 代码:https://github.com/alexsorokoletov/Xamarin.iOS.DatePickerDialog

在 F# 中:

dialog.Show("Choose time", "Done", "Cancel", UIDatePickerMode.Time, (dt) =>
{
  TimePickLabel.Text = dt.ToString();
}, startingTime);

但是,F# 似乎只需要以下格式的 3 个参数:

我了解如何填写 titledatePickerMode 参数,但是,我对回调有点困惑。我知道我应该使用fun 语法,所以我尝试这样:

datePicker.Show("FROM", fun() -> (
        Console.WriteLine("Testing")
    ),UIDatePickerMode.Date)

但这会引发错误:

表达式的类型应为 DateTime,但在 fun 之后的括号中的类型为 unit

【问题讨论】:

    标签: c# ios f# functional-programming closures


    【解决方案1】:

    回调应该采用DateTime 类型的参数,但你的没有。

    将其更改为fun _ -> Console.WriteLine("Testing"),它应该可以工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-25
      • 2018-09-23
      • 2014-02-12
      相关资源
      最近更新 更多