.net有一个警告???? 为什么会遇到这个警告呢?.net检测到无法访问的代码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 .net检测到无法访问的代码比如在return后面的代码就无法访问到 晕,正常啊,就是有这样的东东,RETURN了后面的东西当然访问不到了JF return 语句tran.Commit(); 这儿加了个事务是不是就不执行事务了?有什么办法吗? 用try然后在finally里写tran.Commit(); 你的业务逻辑是什么,为什么函数已经RETURN了后,还要再COMMIT?有没特殊的考虑? try { 代码1 代码2 return 代码3; //原来是写在这里的(tran.Commit()) } catch(Exception e) { tran.Rollback(); throw new LogonException(e.Message ,e); } finally { tran.Commit(); data.Close(); } }//这样写可以吗? Commit只能写在try里面,否则发生异常以后回滚了,又提交,显然错误 不要着急写return可以用一个变量把返回值保存下来到最后再return此变量 如果 代码3 与tran每关系; try { 代码1 代码2 tran.Commit()); return 代码3; } catch(Exception e) { tran.Rollback(); data.Close(); throw new LogonException(e.Message ,e); } finally { tran.Commit(); data.Close(); } }如果代码3与tran有关系,建议通过其他方式返回代码3,比如定义变量返回. 错了,上面没有关闭呢; try { 代码1 代码2 tran.Commit());data.close(); return 代码3; } finally里面的代码永远都会执行的 /// <summary> /// 开始事务 /// </summary> public void BeginTransation() { CreatConnection(); myTran = conn.BeginTransaction(); } /// <summary> /// 提交事务 /// </summary> public void CommitTran() { if (myTran!=null) { myTran.Commit(); } myTran=null; ConnClose(); } /// <summary> /// 回滚事务 /// </summary> public void RollBackTran() { if (myTran!=null) { myTran.Rollback(); } myTran=null; ConnClose(); }这是我在数据访问层自己写一些支持事务的方法。截到错误执行RollBackTran();reutn;q然后直接在finally里写CommitTran() 不要着急写return可以用一个变量把返回值保存下来到最后再return此变量那么tran.Commit();放到那里啊?=============================== 代码1 代码2 return 代码3;这3个都是函数,代码3用到了return ,那么tran.Commit();放到那里啊?================================================================= tran.Begin(); try { void a() int b() return int c() tran.Commit(); } catch(Exception e) { tran.Rollback(); throw new LogonException(e.Message ,e); } finally { data.Close(); } } .net检测到无法访问的代码也就是那段代码不会被执行。例如:try{}catch{throw;return 1;//这段代码不会被运行,你应当适当地修改源代码} 关于工作流 指点一下这段代码的意思 大图标工具栏 用C#如何获取系统信息? 如何删除文件中两个已知字符串中的文本 单击按钮显示另一张图片 WinForm如何关闭指定窗口 向一个表中插入一条数据时,怎样同时使令一个表的一列的值(int)加一. 关于递归 实现字幕滚动??? 请问如何取得一个字符的shift-jis编码的内码? [有点急]关于SQL连接的若干小问题请教````````
比如在return后面的代码就无法访问到
tran.Commit(); 这儿加了个事务是不是就不执行事务了?有什么办法吗?
{
代码1
代码2
return 代码3;
//原来是写在这里的(tran.Commit())
}
catch(Exception e)
{
tran.Rollback();
throw new LogonException(e.Message ,e);
}
finally
{
tran.Commit();
data.Close();
}
}
//这样写可以吗?
{
代码1
代码2
tran.Commit());
return 代码3;
}
catch(Exception e)
{
tran.Rollback();
data.Close();
throw new LogonException(e.Message ,e);
}
finally
{
tran.Commit();
data.Close();
}
}
如果代码3与tran有关系,建议通过其他方式返回代码3,比如定义变量返回.
{
代码1
代码2
tran.Commit());
data.close();
return 代码3;
}
/// 开始事务
/// </summary>
public void BeginTransation()
{
CreatConnection();
myTran = conn.BeginTransaction();
} /// <summary>
/// 提交事务
/// </summary>
public void CommitTran()
{
if (myTran!=null)
{
myTran.Commit();
}
myTran=null;
ConnClose();
} /// <summary>
/// 回滚事务
/// </summary>
public void RollBackTran()
{
if (myTran!=null)
{
myTran.Rollback();
}
myTran=null;
ConnClose();
}
这是我在数据访问层自己写一些支持事务的方法。
截到错误执行RollBackTran();reutn;
q然后直接在finally里写CommitTran()
那么tran.Commit();放到那里啊?
===============================
代码1
代码2
return 代码3;
这3个都是函数,代码3用到了return ,那么tran.Commit();放到那里啊?
=================================================================
tran.Begin();
try
{
void a()
int b()
return int c()
tran.Commit();
}
catch(Exception e)
{
tran.Rollback();
throw new LogonException(e.Message ,e);
}
finally
{
data.Close();
}
}
try
{}
catch
{
throw;
return 1;//这段代码不会被运行,你应当适当地修改源代码
}