我正在尝试编写一个在Windows Mobile 6设备上运行的简单应用程序,它可以连接到SQL 2005服务器并读写数据库。如果它在停靠时只连接到SQL服务器就可以了。
我从未使用过移动设备,因此我可能会错误地考虑它。我创建了一个DataSet和一个TableAdapter,就像我使用常规桌面应用程序一样,但是当我在模拟器中运行应用程序时,当我尝试在TableAdapter上打开连接时,我得到一个SqlException。
有什么明显的东西我不见了吗?我是否需要明确告诉模拟器表现得像停靠一样?是否需要配置才能看到它在网络中?我可以从应用程序中ping有问题的SQL服务器,因此应该有一些连接
答案 0 :(得分:2)
以下是设置仿真器以连接网络的良好链接:
http://www.xdevsoftware.com/blog/post/Enable-Network-Connection-Windows-Mobile-6-Emulator.aspx
当 psasik
将模拟器网络连接描述为“松鼠”时,它是礼貌的。我从来没有让他们成功地工作,但这是因为我总是有一个方便的实际物理设备,我总是回到第一个模拟器问题的暗示。
答案 1 :(得分:2)
感谢您的链接!这很有帮助,我可以确认我可以连接到网络。不幸的是,它仍然无法连接到SQL服务器。我把代码简化为:
`
string connStr;
System.Data.SqlClient.SqlConnection myConn;
try
{
connStr = @"Server='<server name/IP>';Database=<database name>; User Id=sa; Password=<password>";
myConn = new System.Data.SqlClient.SqlConnection(connStr);
myConn.Open();
}
catch (System.Data.SqlClient.SqlException se)
{
MessageBox.Show(se.ToString());
}
`
此代码在myConn.Open()处抛出一个SQLException,其中包含错误类20,编号17.消息是“SQL Server不存在或访问被拒绝”。完全相同的代码(复制/粘贴)在winforms应用程序中完美运行。我做的一切都正确吗?是否可能代码是正确的,但模拟器导致我的问题?是否值得向老板请求移动设备进行试用?