Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 实体框架4列转换-SQL Server-SQLite_Sql Server_Sqlite_Datasource_Entity Framework 4_Poco - Fatal编程技术网

Sql server 实体框架4列转换-SQL Server-SQLite

Sql server 实体框架4列转换-SQL Server-SQLite,sql-server,sqlite,datasource,entity-framework-4,poco,Sql Server,Sqlite,Datasource,Entity Framework 4,Poco,我有一个SQL Server数据库和实体框架模型,使用POCO对象进行设置,运行良好。但是,我还从SQLServer数据库创建了一个Sqlite数据库(使用一个简单的转换过程) 因此,我为SQLite数据库创建了另一个EDMX文件,我希望使用从SQL Server模型生成的现有POCO,并将它们映射到数据库。不幸的是,这将SQLite主键整数列映射为int64(这似乎是SQLite中的基本整数类型),而它们在SQL Server数据库中只是int 这意味着,当我尝试将新的SQLite EDMX映

我有一个SQL Server数据库和实体框架模型,使用POCO对象进行设置,运行良好。但是,我还从SQLServer数据库创建了一个Sqlite数据库(使用一个简单的转换过程)

因此,我为SQLite数据库创建了另一个EDMX文件,我希望使用从SQL Server模型生成的现有POCO,并将它们映射到数据库。不幸的是,这将SQLite主键整数列映射为int64(这似乎是SQLite中的基本整数类型),而它们在SQL Server数据库中只是int

这意味着,当我尝试将新的SQLite EDMX映射到现有的POCO对象(由POCO T4模板从SQL Server EDMX生成)时,由于id列的类型不同,无法在运行时映射这些对象(并引发异常)

是否有人知道此问题的解决方案,例如,是否有方法转换实体框架edmx文件中的值?如果没有,我会认为这是实体框架的一个相当大的限制。


谢谢您的帮助。

您好,我遇到了完全相同的问题,我们刚刚找到了问题的原因。我们原以为是SQLite提供者(phx)或EF,但我们尝试了亚音速,也遇到了同样的问题。你能给我看看代码吗?类似这样:
var expression=expression.Convert(expression.Property(paramExpr,_properties[sortcolumn]),typeof(object))是我们所有问题的根源。我对这个评论有点困惑,你是说它可以做到吗?我当然找不到办法。你有什么例外?是否
无法将类型“System.Int64”强制转换为类型“System.Object”。LINQ to Entities仅支持强制转换实体数据模型基元类型。
?不这样认为,我认为这是因为无法将int64映射到实体模型本身中的int类型。您好,我遇到了完全相同的问题,我们刚刚发现了问题的原因。我们原以为是SQLite提供者(phx)或EF,但我们尝试了亚音速,也遇到了同样的问题。你能给我看看代码吗?类似这样:
var expression=expression.Convert(expression.Property(paramExpr,_properties[sortcolumn]),typeof(object))是我们所有问题的根源。我对这个评论有点困惑,你是说它可以做到吗?我当然找不到办法。你有什么例外?是否
无法将类型“System.Int64”强制转换为类型“System.Object”。LINQ to Entities仅支持强制转换实体数据模型基元类型。
?我不这么认为,我认为这是因为无法在实体模型本身中将int64映射为int类型。