我有一个不同构造函数的类.一个构造函数,没有传递(创建新记录),另一个传递ID(用于更新).我想测试一个条件并根据结果创建一个类对象的新实例.我的问题是该对象没有执行if语句.
protected void Position()
{
if (Session["PositionID"] == null)
{
JobPosition p = new JobPosition();
}
else
{
JobPosition p = new JobPosition(Convert.ToInt32(Session["PositionID"]));
}
p.positionTitle= pTitle.text;
p.positionMission= pMission.text;
p.positionDepartment= pDept.text;
Session["PositionID"] = Convert.ToString(p.SaveDB());
}
Run Code Online (Sandbox Code Playgroud)
p不能在当前上下文中使用.我可以将我的代码复制到每个条件中,看起来我不应该这样做.
我该怎么用p?
您需要将声明移到pif语句之上:
JobPosition p;
if (Session["PositionID"] == null)
{
p = new JobPosition();
}
else
{
p = new JobPosition(Convert.ToInt32(Session["PositionID"]));
}
Run Code Online (Sandbox Code Playgroud)
如果在本地范围内声明变量,则在离开该范围时无法访问该变量.
| 归档时间: |
|
| 查看次数: |
301 次 |
| 最近记录: |