我有以下问题: 在我的WP7项目中,我有一个SQL-CE数据库中有两个相同结构的表。 我想根据某些条件动态地使用其中的一个表。例如:
[Table]
public class myTable1 : someStructure { }
[Table]
public class myTable2 : someStructure { }
[Table]
public class someStructure
{
[Column (IsPrimaryKey = true, IsDbGenerated = true)]
public Int32 ID { get; set; }
[Column]
public String Name { get; set; }
}
public class myDB : DataContext
{
public myDB() : base("Data Source=isostore:/main.sdf") { }
public Table<myTable1> myTable1;
public Table<myTable2> myTable2;
}
public partial class MainPage : PhoneApplicationPage
{
private void doit_Click(object sender, RoutedEventArgs e)
{
var _myDB = new myDB();
if (!_myDB.DatabaseExists())
_myDB.CreateDatabase();
Table<someStructure> _table;
if ( SOMECONDITION )
_table = _myDB.myTable1;
else
_table = _myDB.myTable2;
_table.InsertOnSubmit(new someStructure { Name = "aaa" });
_myDB.SubmitChanges();
}
}
我在 _myDB.CreateDatabase()
行收到一个错误信息:无法创建数据库,因为映射类'databasetest1.myTable1'没有成员。
同时还有警告提示类型someStructure
不能转换成 myTable1
和/或 myTable2
类型。
请问我该如何解决这个问题呢?
提前致谢。