asp.net webformプロジェクト内セッション変数を持ち、ビジネスオブジェクトからデータを取り込んでいます。このオブジェクトにはIcollectionが含まれています.Icollectionはグリッドビューにバインドされています。linqを使用してセッション変数内のデータを照会する方法
myBase.GetAssocMInvolvedPeople(); //call to Business object
if (myBase.AssocMInvolvedPeople != null)
{
Session["sessBase"] = myBase; //sync session with object results
gv_Names.DataSource = myBase.AssocMInvolvedPeople; //bind Icollection to grid
gv_Names.DataBind();
gv_Names.Visible = true;
}
は、その後、グリッド上の私の行選択の中に私が選択した行
GridDataItem selectedItem = (GridDataItem)gv_Names.SelectedItems[0];
SecondaryID = selectedItem["ObjectId"].Text;
のオブジェクトIDを取得する目標は、取得するために、オブジェクトIDを取得し、セッション変数(sessBase)を照会することですコレクションの残りの値(girdで表示されなかった値)をUIのフォーム/テキストフィールド形式で表示します。私はこれのための最善のアプローチは、セッション変数を照会するLinqを使用するが、これについて行くか入れ子のコレクション(AssocMInvolvedPeople)にアクセスする方法についてここでスタックしていると思うだろう。
私は、セッション変数に私のオブジェクトをバックリセットする方法でこれを設定することを前提となります
protected void GetAdditionalData()
{
myBase = (BusinesObjectName)Session["sessBase"];
//here is where I am stuck how to query this object and select the records based upon the selected ID
...
}
私はこのデータを取得する最良の方法上の任意のヒントやアドバイスをいただければ幸いです
はつまり、あなたがSessionオブジェクトをキャスト型と閉鎖に入れた場合、あなたはそれを使用することができるか、標準のLINQクエリ内のオブジェクトの任意のコレクションプロパティする必要があり、
ありがとうlthibodeaux、これは元の質問の答えに最も近いものでした。これにより、私はクエリのオブジェクトに到達することができました。 – rlcrews