2011-03-15 58 views
0

我想写一个asp.net应用程序,它搜索一个sql数据库并返回/更新数据。哪里存储当前选择的项目ID?

我希望能够保存我的用户选择的项目的当前选定ID。例如,医生手术会选择患者记录,然后能够浏览应用程序而不必在每一页上重新选择该患者。

什么是最好的方式来做到这一点。理想情况下,我需要能够获得广泛的ID应用程序。我能想到的唯一的事情就是创建一个公共类,存储ID,并把它公开但这似乎相当混乱

谢谢

+1

创建一个公共类不会让整个应用程序的ID访问。将其公开为可访问性修饰符,并且只会更改其可访问的实现中的范围。 – 2011-03-15 12:56:04

回答

1

我会建议将其存储在一个会话变量:

Page.Session["CurrentPatient"] = YourPatient record 

为了让你可以使用记录:

YourPatientRecord = Page.Session["CurrentPatient"] as PatientRecord; 

为了使事情更轻松,我通常在页面或基本页面中创建一个属性,以便在整个系统中使用。

如:

protected PatientRecord CurrentPatient 
{ 
    get 
    { 
    return Session["CurrentPatient"] as PatientRecord; 
    } 
    set 
    { 
    Session["CurrentPatient"] = value; 
    } 
} 

然后使用它的页面,将其配置为:

PatientRecord oPatientRecord = this.CurrentPatient;