5858|17

1

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

SQL Server Compact 3.5+wince开发,现在碰到个问题 [复制链接]

菜鸟一枚,刚弄wince开发。现在碰到一个在很多老鸟看来很简单的问题,我想问一下。
参照MSDN的做法,在wince窗体上拖了sdf文件。由于本机的wince仿真程序有问题,就直接生成解决方案,然后把bin目录下的exe文件和该sdf文件拿到wince设备下调试,但是结果是数据并不显示。求解!

最新回复

是的,就是因为没写这句。  详情 回复 发表于 2010-4-15 08:51
点赞 关注

回复
举报

2

帖子

0

TA的资源

禁止访问

沙发
 
提示: 作者被禁止或删除 内容自动屏蔽
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

板凳
 
缺少数据库访问的DLL: System.Data.SqlserverCe.dll System.Data.SqlClient.dll
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

4
 

  1. string destConnString = @"Data Source=vstream.sdf";
  2.             SqlCeConnection destConnection = new SqlCeConnection(destConnString);
  3.             destConnection.Open();
  4.             IList list = new List();
  5.             string sql = "select * from posuser";
  6.             DataSet ds = new DataSet();
  7.             SqlCeCommand cmd = new SqlCeCommand(sql, destConnection);
  8.             SqlCeDataAdapter da = new SqlCeDataAdapter(cmd);
  9.             da.Fill(ds);
  10.             DataTable table = ds.Tables[0];
  11.             foreach (DataRow row in table.Rows)
  12.             {
  13.                 Posuser posuer = new Posuser();
  14.                 posuer.Posuser_id = (int)row["Posuser_id"];
  15.                 posuer.Is_enabled = (byte)row["Is_enabled"];
  16.                 posuer.Is_admin = (byte)row["Is_admin"];
  17.                 posuer.Posuser_pin = (string)row["Posuser_pin"];
  18.                 posuer.Posuser_name = (string)row["Posuser_name"];
  19.                 if (row["Posuser_idnumber"] is DBNull)
  20.                 {
  21.                     posuer.Posuser_idnumber = "";
  22.                 }
  23.                 else
  24.                 {
  25.                     posuer.Posuser_idnumber = (string)row["Posuser_idnumber"];
  26.                 }

  27.                 list.Add(posuer);
  28.             }
  29.             destConnection.Close();
复制代码

wince下报错,winform下没任何问题
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

5
 
vstream.sdf文件和EXE都放在bin目录下,执行EXE,里面的数据全是null
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

6
 
UQzJASek3cQ4DL4nKt24QyXD回帖是一种美德!OEXVQwbr9hr21V5lPFJPR2aU
==========================
介+绍:
www.spritebrowser.com
Ae0GWfN5vCcBzkwir8aOHjuG
1)可录制上网记录,截获Http信息。
2)利用截获的Http信息自动生成命令(Page,拖拽即可完成)
3)执行命令,模拟浏览器向Web服务器发生命令。
UQzJASek3cQ4DL4nKt24QyXD
=======================
软件创业Q+Q 群:103815692
sqTkcPV5a5m9nEbI7TqE0rqg
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

7
 
在CE下,操作文件必须使用全路径

放在EXE所在的目录,是不行的!
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

8
 

  1.             //sdf数据库文件所在路径
  2.             string path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().ManifestModule.FullyQualifiedName);
  3.             //
  4.             string destConnString = @"Data Source=" + path + "\\vstream.sdf";
  5.             SqlCeConnection destConnection = new SqlCeConnection(destConnString);
  6.             destConnection.Open();
  7.             IList list = new List();
  8.             string sql = "select * from posuser";
  9.             DataSet ds = new DataSet();
  10.             SqlCeCommand cmd = new SqlCeCommand(sql, destConnection);
  11.             SqlCeDataAdapter da = new SqlCeDataAdapter(cmd);
  12.             da.Fill(ds);
  13.             DataTable table = ds.Tables[0];
  14.             foreach (DataRow row in table.Rows)
  15.             {
  16.                 Posuser posuer = new Posuser();
  17.                 posuer.Posuser_id = (int)row["Posuser_id"];
  18.                 posuer.Is_enabled = (byte)row["Is_enabled"];
  19.                 posuer.Is_admin = (byte)row["Is_admin"];
  20.                 posuer.Posuser_pin = (string)row["Posuser_pin"];
  21.                 posuer.Posuser_name = (string)row["Posuser_name"];
  22.                 if (row["Posuser_idnumber"] is DBNull)
  23.                 {
  24.                     posuer.Posuser_idnumber = "";
  25.                 }
  26.                 else
  27.                 {
  28.                     posuer.Posuser_idnumber = (string)row["Posuser_idnumber"];
  29.                 }

  30.                 list.Add(posuer);
  31.             }
  32.             destConnection.Close();
复制代码

改了。我在windows下运行bin目录里的exe文件,查出来的值还是null!!!
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

9
 
数据有丢失。。。
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

10
 
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

11
 
引用 8 楼 mingyufeng 的回复:
数据有丢失。。。


怎么丢失了?在winform下没问题啊
 
 
 

回复

6

帖子

0

TA的资源

一粒金砂(初级)

12
 
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

13
 
LZ ,你最好 音步调试一下,看看问题出在什么地方?
 
 
 

回复

2

帖子

0

TA的资源

一粒金砂(初级)

14
 
没有用过C#,不过CE下要使用Unicode字符的
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

15
 

  1.             string path = Path.GetDirectoryName(Assembly.GetExecutingAssembly().GetName().CodeBase);
  2.             string destConnString = @"Data Source=" + path + "\\vstream.sdf";
复制代码

改成这样了。现在没设备调试,不知道这样写对不对
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

16
 

  1.             posuserDataGrid.DataSource = list;
复制代码

没绑数据源,o(╯□╰)o现在本地上能执行,就看wince设备上行不行了
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

17
 
你没有调用databind()
 
 
 

回复

1

帖子

0

TA的资源

一粒金砂(初级)

18
 
引用 16 楼 jake_lin 的回复:
你没有调用databind()

是的,就是因为没写这句。
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表