@{
Layout = "~/_SiteLayout.cshtml";
Page.Title = "Training";
var positionID = "";
positionID = Request.QueryString["ID"];
var db = Database.Open("Training");
var courselist = db.Query("SELECT title, ID FROM courses");
var selectedCourses = db.Query("SELECT course_id from positioncourses WHERE position_id = @0", positionID);
}
<h1>Select or deselect courses for this position:</h1>
@foreach(var item in courselist){
<label for="courseID">
<input type="checkbox" name="courseID" value="@item.id" checked="@(selectedCourses.Contains(item.ID))" /> @item.title
</label>
}
上記のコードブロックの結果は次のとおりです。
「コンパイラ エラー メッセージ: CS1973: 'System.Collections.Generic.IEnumerable' には 'Contains' という名前の適用可能なメソッドがありませんが、その名前の拡張メソッドがあるようです。拡張メソッドは動的にディスパッチできません。動的引数をキャストするか、拡張メソッド構文のない拡張メソッド。」
エラーの原因は何ですか? 私は、エラー メッセージ自体を解読できるほど高度ではありません。