2 zhongxue dai zhongxue_dai 于 2016.02.13 13:25 提问

wcf 报内部错误,无法处理该请求。怀疑是sql的问题 3C

用.net 4.0 + mysql写WCF的事务处理例子。
不加sql相关的东西都没问题。
加上就报内部错误,而且没有详细错误,也不知道为什么,我在配置文件开了debug,并且都加try了,还是没有详细信息。

测试了好几次,就怀疑是SQL的这部分有问题,但是我还看不出哪里的问题。请教。

          [OperationBehavior(TransactionScopeRequired=true)]
        public void intoMoney()
        {
            System.Threading.Thread.Sleep(1000);
            string strConn = @"server=127.0.0.1;uid=root;pwd=1512;database=wcftest";
            string sql = @"update account set balance=200 where id = 'B'";
            MySqlConnection conn = new MySqlConnection(strConn);
            MySqlCommand cmd = new MySqlCommand(sql, conn);
            conn.Open();
            cmd.ExecuteNonQuery();
            conn.Close();
        }

3个回答

caozhy
caozhy   Ds   Rxr 2016.02.14 07:19

string strConn = @"server=127.0.0.1;uid=root;pwd=1512;database=wcftest";
这行代码的问题,检查你的mysql是否启动,最好用127.0.0.1:3306,带上端口号,另外检查防火墙,你的密码是不是1512,你的数据库是不是wcftest
"update account set balance=200 where id = 'B'";
这里检查 account表是否存在,最好用

 `account`

确保表名不和关键字冲突。以及你的id列是不是字符串型,你的balance是不是整数

caozhy
caozhy   Ds   Rxr 2016.02.14 07:19

当然最好还是加上 try catch,拦截下异常,并且输出下,先在控制台程序测试好了,再放在wcf

zimengyu2020
zimengyu2020   2016.02.13 22:16

wcf 支持断点,打个断点试试,操作数据库的代码有问题。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!