2013-05-07 66 views
1

我创建了一个WCF服务。它使用MySQL连接器连接到MySQL数据库。该服务的用户是Windows Phone应用程序。 在我的电脑上,一切正常。但是,如果我发布了WCF服务(在网络上或在本地主机上),并尝试从手机应用程序中使用它,它会产生一个错误WCF和MySQL连接器

“服务器无法处理请求由于内部 错误。”

通过测试,我发现,在错误出现在该行connection = new MySqlConnection(ConnectionString);在我的笔记本电脑一切工作(当我调试的项目),我测试了我的WCF服务,它完美地访问数据库,并尽一切良好。同样,当我在本地或网络上发布时,访问该服务会导致错误。 I published the log file here。 有什么不对?什么会导致这个问题?

+1

权限?防火墙吗?双跳?通常的嫌疑人... – 2013-05-07 06:08:01

+1

如果我在网上或我的电脑上发布它,并写入“返回true”作为该方法的唯一代码行,它将起作用。如果我把connection = new MySqlConnection(ConnectionString);它会产生一个错误。 – user1460819 2013-05-07 06:09:55

+0

你可以分享你的连接字符串的细节 - 改变它可能是敏感的任何东西吗?服务在您的本地计算机上进行调试但在本地计算机上发布时出现故障的事实使我怀疑每种情况下的安全上下文。 – J0e3gan 2013-05-07 06:14:28

回答

0

最后,我发现了什么问题。 This question帮了很多。原来问题出在MySql.Data.dll。它必须在本地复制(默认情况下该属性设置为false)。没有这个,程序没有找到库并抛出异常。所以我需要将设置更改为'Copy To Local = true'