名前をリストする既存のドロップダウンリストがあります。依存ドロップダウンリスト(カスケード)
私は何を私が達成しようとしていることであるすべてのアルファベットに
をcontaingsダウンリスト別のドロップを作成しようとしています:
ユーザーがアルファベットDropsownlistからアルファベットを選択すると、二dropdwonlistはすべてに移入されます選択されたアルファベットで始まる名前。
私はこのコードを持っていました。
`NamesDropDownList.SelectedValue = (NamesDropDownList.DataValueField).Where(NamesDropDownList.SelectedItem.Value).Contains(AlphabetsDropDownList.SelectedItem.Value);`
が、それは私にエラーを与えている:
Error Message: string does not contain a definition of Where, and the method overload contains invalid arguments.
この問題への任意のヘルプやアプローチ。
おかげ
あなたは天才です、これは名前 'publicを取得するメソッドです。IEnumerable GetAllNamesPlusUnknown(){(var repo = RepositoryFactory.Create()){var allNames = repo.Matches(new AllName()); var rv = new List (){新しい名前( "")}; rv.AddRange(allname.Select(j =>新しい名前(j.Name)));リターンrv;私はこれを使って作業しなければなりません。プロジェクトは本当にうまくいきますし、名前リストが長すぎてリストを作成できないように設計されていませんでした。文字を選択すると約2000の名前をスクロールできます。 –
user5711432
@ user5711432:データベースから(またはどこに格納されていても)どのようにデータを取得するかはあなた次第です。この 'GetAllNamesPlusUnknown'メソッドは' IEnumerable 'を返します。したがって、返された値に' .Where() 'を添付して、このメソッドをこの操作のバッキングデータとして扱うことができます。 –
David
ObjectDataSourceを使ってデータを取得しようとしましたが、Sqlデータソースを使用していて、アルファベットを取得できました。上記のメソッド(objectDatasource)を使用して名前を取得しました。データを取得するのが賢明だと思いますこれはAlphabets'public IEnumerable GetAllAlphabets(){(var repo = RepositoryFactory.Create())を使用して取得します {var allalphabets = repo.Matches(new AllAlphabets()); var al =新しいリスト(){新しいGroupAlphabets()}; return al;}} 'そして、コードの中でそれを返しました。何が問題を薄くしていますか? –
user5711432