1 つ以上の特定のチェックボックス リスト項目が選択されている場合に、リスト ボックスを表示するための正しいコード ビハインドを見つけようとしています。チェックボックス リストはエンティティ データ ソースから作成され、そのソースの SQL テーブルには、その選択がリストボックスを表示するかどうかを示すフィールドもあります。うわー!テーブルは次のようになります。
GUID grade_level show_college_list
(gen) 12 0 (bit)
(gen) College 1
asp は次のようなものです。
<asp:EntityDataSource ID="GradeLevelEntityDataSource" runat="server"
ConnectionString="name=NewCourseRequestDataEntities"
DefaultContainerName="NewCourseRequestDataEntities" EnableFlattening="False"
EntitySetName="grade_levels" OrderBy="it.grade_level_description">
</asp:EntityDataSource>
<asp:Label ID="Label7" cssClass="leftlabel" runat="server" text="Grade Level (check all that apply):"></asp:Label>
<asp:CheckBoxList ID="GradeLevelCheckBoxList" runat="server" cssClass="horizontalcontrols"
DataSourceID="GradeLevelEntityDataSource"
DataTextField="grade_level_description" DataValueField="grade_level_id" AutoPostBack="True"
OnSelectedIndexChanged="CollegeInstitutionsListboxChange"
RepeatDirection="Horizontal" RepeatLayout="Flow">
</asp:CheckBoxList>
College がチェックされている場合、Institutions リストボックス パネルを表示する必要があります。これは私がコードをどこまでやったかです:
if (sender != null)
{
foreach (ListItem grade in GradeLevelCheckBoxList.Items)
{
if (grade.Selected == true)
{
NewCourseRequestDataEntities context = new NewCourseRequestDataEntities();
var guids = from g in context.grade_levels where g.show_college_list == true select g;
if ( guids.Contains(new Guid(grade.Value)) )
{
testselected.Text = grade.Value; //for testing
CollegeInstitutionsSelectPanel.Visible = true;
}
}
}
}
contains メソッドでこれら 2 つのエラーを受け取りました。彼らが何を意味するのかわかりません。
エラー 1 インスタンス引数: 'System.Linq.IQueryable' から 'System.Linq.ParallelQuery' に変換できません Y:\visual studio\New Course Request\NewCourseRequestForm.aspx.cs 146 34 新しいコース リクエスト
エラー 2 'System.Linq.IQueryable' には 'Contains' の定義が含まれておらず、最適な拡張メソッド オーバーロード 'System.Linq.ParallelEnumerable.Contains(System.Linq.ParallelQuery, TSource)' には無効な引数がいくつかあります Y:\visual studio\新しいコース リクエスト\NewCourseRequestForm.aspx.cs 146 34 新しいコース リクエスト
誰でも助けてもらえますか?