2 つの GridView があります。GetGeneralDiagnosis
すべての診断のリストを返すメソッドがあります:
コード 診断
F50 摂食障害
F51 非有機的睡眠障害
GetSpecificDiagnosis
より具体的なリストを返すメソッド:
コード 診断
F50.0 神経性無食欲症
F50.1 非定型神経性無食欲症
F51.0 非器質性不眠症
F51.1 非器性性過眠症
これで、最初の GridView の一般的な診断に従って、SPECIFIC DIAGNOSIS を 2 番目の GridView にバインドするメソッドができました。
protected void gvGeneralDiagnosis_SelectedIndexChanged(object sender, EventArgs e)
{
string generalDiagnosis = gvGeneralDiagnosis.DataKeys[gvGeneralDiagnosis.SelectedIndex].Values["ICD10Code"].ToString();
var ICD10 = Visit.GetSpecificDiagnosis(); // here I'm getting data from database
gvSpecificDiagnosis.DataSource = ICD10.Where(i => i.ICD10Code.Contains(generalDiagnosis)).Select(i => new { i.ICD10Name, i.ICD10Code });
gvSpecificDiagnosis.DataBind();
}
選択したインデックスが変更されるたびにデータベースに接続したくありません。
リストを一度だけ取得するにはどうすればよいvar ICD10 = Visit.GetSpecificDiagnosis()
ですか? グローバル変数は非常に悪い考えだと聞きましたが、どうすれば別の方法でそれを行うことができますか?