在ASP.NET Web应用程序中,我必须从数据源(SQL Server)为Windows Mobile Compact Framework应用程序动态创建 SQL Compact 3.5数据库。
我必须创建数据库文件,所需对象(表,...)并用数据填充表。客户端应用程序(Windows Mobile设备)将下载生成的文件。
我需要哪些先决条件(引用的装配,安装) - 或者:这是否可能?
答案 0 :(得分:3)
至少需要System.Data.SqlServerCe程序集。这通常在GAC中,但它可以用作本地复制的DLL。
从那里开始,您可以实例化一个SqlCeEngine对象并使用CreateDatabase()
这是VB.NET中的一些CodeProject example code。
答案 1 :(得分:1)
基本上Henk的答案指向了正确的方向。但有一些警告。 SQLServerCE程序集会引发运行时错误。
我找到了这两个有用的链接:
要使用程序集,您必须调用此方法:
AppDomain.CurrentDomain.SetData("SQLServerEverywhereUnderWebHosting", true)
答案 2 :(得分:-1)
您需要SQL Compact 3.5 SP1运行时:
然后添加对System.Data.SqlServerCe的引用
以下是一些创建新数据库的示例代码:
using System.Data.SqlServerCe;
public static class SqlCompactServices
{
public static void CreateDatabase()
{
string connectionString = "Data Source=file.sdf";
using (SqlCeEngine engine = new SqlCeEngine(connectionString))
{
engine.CreateDatabase();
}
using (SqlCeConnection connection = new SqlCeConnection(connectionString))
{
connection.Open();
// preform queries just like "regular" SQL Server
}
}
}