| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

差分

ナビゲーションに移動 検索に移動
|*[[言語 まとめ C プログラミングC Sharp第7版(2) | プログラミングC# 第7版(2)]] | [[C Sharp]] | [[C Sharp サンプルコード]] | [[Effective C Sharp 4.0]] | [[Universal Windows Platform]] | [[Visual Studio]] |
*[[プログラミングC Sharp 第7版]]
*完全な型となるためには、型パラメータが指定されなければならない
====制約====
*型パラメータで、コンストラクタを使用する
*:型引数が特定の要請を満たさなければならいことを明示できる
public static class Deferred<T> where T : new() {
*プロパティを最初に読みだすまでインスタンスは構築されない
*T は、引数なしのコンストラクタを供給する必要がある
 
/// <summary>
/// モデルからDTOを生成する
/// モデルがnullの場合、nullを返す
/// </summary>
/// <param name="model"></param>
/// <typeparam name="D"></typeparam>
/// <returns></returns>
public static D? FromModel<D>(T model) where D: ModelBaseDto<T>, new()
{
if (model == null)
{
return default(D);
}
var dto = new D();
dto._model = model;
return dto;
}
 
====型制約====
*特定の型と互換
*引数のないラムダ
Func&lt;bool&gt; isAfternoon = () =&gt; DateTime.Now.Hour &gt;= 12;
 
 
<pre>
Func<string, string> normalizeField = field => field?.Trim().ToUpper();
var compareHeaders = headerFields.Select(normalizeField).ToList();
</pre>
 
====キャプチャされた変数====
*インラインメソッドからその外側のメソッドの変数参照ができる
WHERE [Extent1].[ListPrice] &gt; cast(3000 as decimal(18))
====ラムダ式を伴うListクラスのメソッド====
[[Category:ラムダ]]
 
*Listクラスでは、引数に対してラムダ式を指定できるメソッドが多く用意されている。
{|class="wikitable"
|-
|}
 
===イベント===
=====基本=====

案内メニュー