SQL Server CE企业库5无法传递参数

发布于 2024-12-07 15:10:59 字数 965 浏览 0 评论 0原文

我有一个 SQL CE(.sdf) 数据库,我试图使用 MS Enterprise Library 5.0 从 MVC3 应用程序访问该数据库。我已经引用了 Compact Edition 4.0 的 SQLCE dll。 我使用下面的代码使用 Enterprise Library 执行一个简单的 Select

>   SqlCeDatabase objDB = new SqlCeDatabase(connectionString);

>   IDataReader rdr = objDB.ExecuteReaderSql("select *
>              from sys_config where (cfg_code>=@p1 and cfg_code<=@p2) or
>                                     cfg_code=@p3",
>                                     new DbParameter[] { new SqlCeParameter("@p1",
>                         1010), new SqlCeParameter("@p2", 1010), new SqlCeParameter("@p3",
>                           1010) });

当我运行上面的代码时,我得到了错误

The SqlCeParameterCollection only accepts non-null SqlCeParameter type objects, not SqlCeParameter objects

,我无法理解它,所以我尝试使用 Select 语句构造一个 SQLCeCommand 并将相同的参数数组添加到命令并在命令上执行reADER。这似乎工作得很好。

不过我想使用企业库来实现它。我做错了什么?

谢谢

I have an SQL CE(.sdf) database which I am trying to access from MVC3 application using MS Enterprise Library 5.0. I have referenced the SQLCE dll for Compact Edition 4.0.
I use the following code to execute a simple Select using Enterprise Library

>   SqlCeDatabase objDB = new SqlCeDatabase(connectionString);

>   IDataReader rdr = objDB.ExecuteReaderSql("select *
>              from sys_config where (cfg_code>=@p1 and cfg_code<=@p2) or
>                                     cfg_code=@p3",
>                                     new DbParameter[] { new SqlCeParameter("@p1",
>                         1010), new SqlCeParameter("@p2", 1010), new SqlCeParameter("@p3",
>                           1010) });

When I run the above I get the error

The SqlCeParameterCollection only accepts non-null SqlCeParameter type objects, not SqlCeParameter objects

I could not make much sense out of it so I tried to construct an SQLCeCommand using the Select statement and add the same parameter array to the command and executereADER on the command.This seems to work perfectly.

However I want to get it going using Enterprise Library. What am I doing wrong?

thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文