黑马程序员技术交流社区

标题: 解释一下代码 [打印本页]

作者: wang346351    时间: 2013-4-18 13:05
标题: 解释一下代码
  1. Agent agent = Session["user"] as Agent;

  2. if (agent != null)
  3. {
  4. this.hlAgentName.Text = agent.AgentName;
  5. }
复制代码
Agent是一个实体类对象
Agent agent = Session["user"] as Agent;这句是什么意思?怎么还可以这样写

作者: 高文咪    时间: 2013-4-18 13:41
as是用来进行类型转换的,就是把你取到的Sessin["user"]值的类型转换成agent这种类型
作者: 史鹏飞    时间: 2013-4-18 14:31
Session['user'] 里面存的是Agent这个对象,这里的as就是把Session["user"] 转换成 Agent这个对象,赋给 agent 这个变量。

和 Agent agent = (Agent)Session["user"]是一样的。
作者: 张振    时间: 2013-4-18 19:04
Session["user"]这个不是Agentl类型 ,而表达式中是需要把把这个session 实例化成Agent的对象 那么用as起到一个转换成Agent类型的作用 然后用到等于号实例化
作者: 老衲玩IT    时间: 2013-8-24 16:50
Session["user"]存储的是一个object类,as Agent明显是对该object进行强制转换




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2