2010-01-21 54 views
2

是否可以为F#中的委托类型指定参数名称?当我创建这种类型的F#的委托:为委托类型提供参数名称

type DataValidationEventHandler = delegate of obj * DataValidationEventArgs -> unit 

...在C#中自动生成此签名处理程序:

static void loader_ValidationEvent(object __p1, DataValidationEventArgs __p2) 

理想的情况下它会产生通常的“发件人”和'e'参数名称。

回答

3

是:

type DataValidationEventHandler = delegate of sender:obj * e:DataValidationEventArgs -> unit 
+0

Bleh。我尝试过,但是我在'sender:obj'周围放置了parens(就像你在函数签名中一样)。很高兴知道这是行不通的。谢谢。 – Daniel 2010-01-21 16:51:34

+0

你如何为c#做这件事? – 2010-02-12 18:18:05

+0

@Bless Yahu - 在C#委托类型中总是有参数名 - 没有办法忽略它们。例如,等效的C#委托将委托void DataValidationEventHanlder(object sender,DataValidationEventArgs e)'。 ' – kvb 2010-02-12 19:10:23

1

是:

type MyDel = delegate of o:obj * ea:System.EventArgs -> unit 

名字他们oea