关于WebService调用的问题

holyrong 2007-11-01 11:24:39
我的一个WebService在本地编译成功,但在其他项目中调用后,却出错,提示:System.Data.SqlClient.SqlException:在第一行:‘{’附近有语法错误。并将错误指向了以下代码中的:SqlDataReader sdrConfig = cmd.ExecuteReader();

以下是WebService中的方法:


[WebMethod(Description = "服务器端调用该方法向客户端发送邮件,传输登录网关配置信息,发送成功则返回true,否则返回错误信息")]
public string sendEMailForConfig(string emailServer, string sendAddress, string eUserName, string ePwd, string CompanyID)
{
string[] config = new string[6];//存储配置信息
string receiver = "";//收件人地址

string conStr = System.Configuration.ConfigurationManager.ConnectionStrings["conGZMServerDB"].ConnectionString;//连接字符串
SqlConnection conn = new SqlConnection(conStr);
SqlCommand cmd = new SqlCommand();
cmd.CommandText = "Select CompanyID,ClientCode,LoginID,LoginPassword,GatewayIP,NotePort,EMail From Company Where CompanyID =" + CompanyID;
cmd.CommandType = CommandType.Text;
cmd.Connection = conn;

try
{
conn.Open();

SqlDataReader sdrConfig = cmd.ExecuteReader();
if (sdrConfig.Read())
{
int i=0;
for ( ; i < sdrConfig.FieldCount-1; i++)
{
config[i] = sdrConfig[i].ToString();//将配置信息存储在数组中
}
receiver = sdrConfig[i].ToString();//收件人邮箱地址

if (receiver.Replace(" ", "").Equals(""))
{
return "收件人邮箱地址不能为空。";
}
}
sdrConfig.Close();

createConfigIni(config);//写配置文件
sendEmail(emailServer, sendAddress, eUserName, ePwd, receiver, path);//发邮件
return "发送成功";

}
catch (Exception ex)
{
return ex.ToString();
}
finally
{
conn.Dispose();
cmd.Dispose();
}

}


请高手指教,谢谢!
...全文
132 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
meiZiNick 2008-04-30
  • 打赏
  • 举报
回复
有问题请先GOOGLE,BAIDU
yhxy6767 2008-04-30
  • 打赏
  • 举报
回复
cmd.CommandText = "Select CompanyID,ClientCode,LoginID,LoginPassword,GatewayIP,NotePort,EMail From Company Where CompanyID =" + CompanyID;
改成下面的试试
cmd.CommandText = "Select CompanyID,ClientCode,LoginID,LoginPassword,GatewayIP,NotePort,EMail From Company Where CompanyID ='" + CompanyID + "'";
UltraBejing 2008-04-30
  • 打赏
  • 举报
回复
没遇到过这种情况.
J_IE_ZH 2007-11-27
  • 打赏
  • 举报
回复
明显是sql语法错误嘛,人家都说了
zzjml168a 2007-11-11
  • 打赏
  • 举报
回复
估计,你调用的时候,CompanyID没有传入值,所以Sql没有办法执行,你核查一下!
fanwenxuan 2007-11-06
  • 打赏
  • 举报
回复
我觉得既然本地边已成功,那么这个webservice肯定没有问题
问题的可能出处在你引用它的那个地方。是不是没有更新webservice引用?,或者添加web服务代理出了问题。
HT082 2007-11-06
  • 打赏
  • 举报
回复
CommandText 有对吗
还有这个conStr看看有没对
佛的光辉 2007-11-01
  • 打赏
  • 举报
回复
看看是不是你的SQL语句出错,编译成功不代表运行的时候就没有错误啊

12,162

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 Web Services
社区管理员
  • Web Services社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧