Quantcast
Channel: かずきのBlog@hatena
Viewing all articles
Browse latest Browse all 1387

CLIMutable属性つけると便利らしい?

$
0
0

F#にCLIMutableなる属性が追加さられたみたいです。こいつをつけるとデフォルトコンストラクタとか、プロパティに自動的にgetter/setterつけてくれてDTO作ったりEFで便利かもね!みたいな説明が書いてあるような気がしました。

namespace Hoge
    open System;

    // この属性をつけるとレコードにデフォルトコンストラクタとgetter/setterが出来るらしい
    [<CLIMutableAttribute>]
    type Person = {
        Name: string;
        Age: int;
    }

C#のプロジェクトから参照するとデフォルトコンストラクタとプロパティへのセッターが使えました

var p = new Hoge.Person(); // OK
p.Name = "tanaka"; // OK!

ちなみに、属性を外して実行すると上記コードはエラーになります。

var p = new Hoge.Person("tanaka", 10); // コンストラクタで値を設定したら変更できない
p.Name = "kimura"; // NG

Viewing all articles
Browse latest Browse all 1387

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>