C# 在SQL CE WP7中何时以及如何创建表?
我一直在遵循MSDN的建议,我对表的创建有一个问题。基本上,当他们创建ToDoDataContext类时,他们有一个构造函数和一个连接字符串的静态属性,这是有意义的,但是他们放置了另一个名为ToDoItems(类型为Table)的属性。从逻辑上讲,这是有意义的,因为这是一个用于ToDoItems的表,但没有意义的是,我们实际上从未将其分配给数据库。当我运行程序时,它只是创建了表。我想知道数据库是在什么时候创建的,它是否会自动知道仅仅因为该表属于该类型而将其添加到数据库中,或者它是在其他地方添加的 编辑:以下是我提到的具体作品:C# 在SQL CE WP7中何时以及如何创建表?,c#,windows-phone-7,sql-server-ce,windows-phone-7.1,C#,Windows Phone 7,Sql Server Ce,Windows Phone 7.1,我一直在遵循MSDN的建议,我对表的创建有一个问题。基本上,当他们创建ToDoDataContext类时,他们有一个构造函数和一个连接字符串的静态属性,这是有意义的,但是他们放置了另一个名为ToDoItems(类型为Table)的属性。从逻辑上讲,这是有意义的,因为这是一个用于ToDoItems的表,但没有意义的是,我们实际上从未将其分配给数据库。当我运行程序时,它只是创建了表。我想知道数据库是在什么时候创建的,它是否会自动知道仅仅因为该表属于该类型而将其添加到数据库中,或者它是在其他地方添加的
public class ToDoDataContext : DataContext
{
// Specify the connection string as a static, used in main page and app.xaml.
public static string DBConnectionString = "Data Source=isostore:/ToDo.sdf";
// Pass the connection string to the base class.
public ToDoDataContext(string connectionString)
: base(connectionString)
{ }
// Specify a single table for the to-do items.
public Table<ToDoItem> ToDoItems;
}
public类ToDoDataContext:DataContext
{
//将连接字符串指定为静态,在主页和app.xaml中使用。
公共静态字符串DBConnectionString=“数据源=isostore:/ToDo.sdf”;
//将连接字符串传递给基类。
公共到ODataContext(字符串连接字符串)
:基本(连接字符串)
{ }
//为待办事项指定一个表。
公共表ToDoItems;
}
通过将表添加到DataContext
派生类中,您正在向数据库分配表。操作系统中的数据库代码可以检查DataContext
类,查找表
,然后在调用db.CreateDatabase()
时创建正确的数据库基础结构