2011-12-11 8 views
7

F#の場合:値を返すために、属性の適用 - メソッドの戻り値に属性を適用することが可能であるC#で

[return: DynamicAttribute] 
public object Xyz() { 
    return new ExpandoObject(); 
} 

は、F#で、このことは可能ですか?

背景

私は、メソッドから「ダイナミック」を返すためにC#のような言語で消費されるF#で書かれたライブラリーの方法をしたいと思います。 C#からコンパイルされた同様の定義済みのメソッドを調べると、戻り値の型がオブジェクトで、DynamicAttributeがオブジェクトの戻り値に適用されているようです。

答えて

8

戻り値にも同様の属性ターゲットを適用できます。

let SomeFunc x : [<return: SomeAttribute>] SomeType = 
    SomeOperation x 

this MSDN pageの末尾に属性ターゲットを指定する方法の表を参照してください。

+0

はい!オブジェクトを返し、DynamicAttributeを適用すると、C#プロジェクトでダイナミックとして表示されます。ありがとう! – flq

関連する問題