次の方法で共有


コンパイラ エラー CS1942

更新 : 2007 年 11 月

エラー メッセージ

'句' 句の式の型が正しくありません。'メソッド' の呼び出しで型を推論できませんでした。

通常、このエラーは、範囲変数に明示的な型が正しく指定されていない場合に生成されます。

このエラーを解決するには

  • 範囲変数が明示的に型指定されている場合は、その型が、反復処理するコレクション内の要素と同じ型か、またはその要素の型から暗黙的に変換できる型どうかを確認します。範囲変数の前に var キーワードが指定されている場合は、var を削除します。

使用例

次のコードは CS1942 を生成します。

// cs1942.cs
class Program
    {
        static void Main(string[] args)
        {
            var x = from var i in Enumerable.Range(1, 100) // CS1949
                    select i; //CS1942
        }
    }

範囲変数に var を使用すると、var が型ではないことで基になる Cast<T> 操作に失敗するため、CS1942 は CS1949 に関連して発生します。

参照

概念

LINQ クエリ式 (C# プログラミング ガイド)

参照

var (C# リファレンス)