DOBON.NETプログラミング道掲示板

■35447 / 5階層)  jumbo icon(256x256)が存在するか知る方法
□投稿者/ 魔界の仮面弁士 大御所(1551回)-(2023/06/06(Tue) 09:42:21)
  • アイコン
    No35446に返信(inunoshiさんの記事)
    > csc.exeでのコンパイル時のエラー(FirstOrDefaultの行で出ます)
    >  error CS1525: '.' は無効です。
    >  error CS1003: 構文エラーです。':' が必要です。
    
    それは LINQ の問題では無いですね。
    エラー行とエラー列を再度確認してみてください。
    
    .FirstOrDefault(〜) が失敗しているのではなく、
    その後に続く ?.Icon の部分を解釈できていないのだと思います。
    
    
    ?.Icon 構文は「null 条件演算子」といって C#6 で追加された文法です。
    csc.exe のオプションに /langversion:6 を追加してみてください。
    https://ufcpp.net/study/csharp/ap_ver6.html#null-conditional
    
    
    現状は恐らく、
     C:\Windows\Microsoft.NET\Framework\v4.0.30319\csc.exe
     C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe
    を使っているのだと思いますが、これらは /langversion:5 までしか理解しませんので、
    Roslyn 世代の csc.exe を利用してください。
    
    なお、C# 6 以降に対応したコンパイラで /langversion:5 を指定した場合は、
      error CS1525: '.' は無効です。
      error CS1003: 構文エラーです。':' が必要です。
    ではなく、
      error CS8026: 機能 'Null を反映する演算子' は C# 5 では使用できません。6 以上の言語バージョンをお 使いください。
    というメッセージに変化するはずです。
    
    
    なお、
     var icon = singleIcon.FirstOrDefault(x => x.Size == size)?.Icon;
    という行を
     var iconImage = singleIcon.FirstOrDefault(x => x.Size == size);
     if (iconImage == null) { continue; }
     var icon = iconImage.Icon;
     if (icon == null) { continue; }
    に書き換えれば、文法レベルを C#3 相当まで下げることができます。

解決み!
違反を報告
削除キー/

前の記事(元になった記事) 次の記事(この記事の返信)
←Re[4]: jumbo icon(256x256)が存在するか知る方法 /inunoshi →Re[6]: jumbo icon(256x256)が存在するか知る方法 /inunoshi
 
上記関連ツリー

Nomalアイコン jumbo icon(256x256)が存在するか知る方法 / inunoshi (23/06/04(Sun) 20:10) #35433 testIcon256.png/1KB
Nomalアイコン Re[1]: jumbo icon(256x256)が存在するか知る方法 / 魔界の仮面弁士 (23/06/05(Mon) 09:49) #35435
  └Nomalアイコン Re[2]: jumbo icon(256x256)が存在するか知る方法 / inunoshi (23/06/05(Mon) 22:31) #35443 解決み!
    └Nomalアイコン Re[3]: jumbo icon(256x256)が存在するか知る方法 / 魔界の仮面弁士 (23/06/05(Mon) 22:56) #35445 解決み!
      └Nomalアイコン Re[4]: jumbo icon(256x256)が存在するか知る方法 / inunoshi (23/06/05(Mon) 23:41) #35446 解決み!
        └Nomalアイコン jumbo icon(256x256)が存在するか知る方法 / 魔界の仮面弁士 (23/06/06(Tue) 09:42) #35447 解決み! ←Now
          └Nomalアイコン Re[6]: jumbo icon(256x256)が存在するか知る方法 / inunoshi (23/06/06(Tue) 20:49) #35448 解決み!

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/


- Child Tree -