SchemaExport似乎有效,但SchemaUpdate失败 - SchemaUpdate.Exceptions包含此对象:
System.NotSupportedException: The method is not supported.
in System.Data.Common.DbConnection.GetSchema(String collectionName, String[] restrictionValues)
in NHibernate.Dialect.Schema.AbstractDataBaseSchema.GetTables(String catalog, String schemaPattern, String tableNamePattern, String[] types)
in NHibernate.Tool.hbm2ddl.DatabaseMetadata.GetTableMetadata(String name, String schema, String catalog, Boolean isQuoted)
in NHibernate.Cfg.Configuration.GenerateSchemaUpdateScript(Dialect dialect, DatabaseMetadata databaseMetadata)
in NHibernate.Tool.hbm2ddl.SchemaUpdate.Execute(Action`1 scriptAction, Boolean doUpdate)
答案 0 :(得分:2)
SQL Server Compact 4支持GetSchema - 使用此版本而不是3.5
答案 1 :(得分:0)
好的,我认为更感兴趣为什么架构更新不适用于MS SQL的Compact Edition。
堆栈跟踪意味着NHibernate的方法不会失败,而是检索当前数据库模式的方法。 在MS SQL CE中使用方言时,实际上应该在堆栈跟踪中调用System.Data.SqlServerCe.SqlCeConnection.GetSchema()。但是,只显示DbConnection.GetSchema()。这意味着两件事:
类SqlCeConnection不会覆盖此方法的实现,因此将调用基类的实现。但是,基类只会抛出NotSupportedException
NHibernate或适合MS SQL CE的方言无能为力。因此,这将是一个由MS