EF操作sqlite数据库时的项目兼容性问题

时间:2021-03-15 18:26:27

问题:vs2015打不开vs2010建的操作sqlite的实体数据模型edmx文件

    EF操作sqlite数据库时的项目兼容性问题

原因:

    当前电脑必须先安装:驱动库及sqlite的vs拓展

    正常情况下安装驱动和拓展后,vs2015就应该可以正常打开旧版本EF创建的edmx文件了

    mysql之前就这样,sqlserver也这样,理论上vs2015是可以兼容的

操作:

    下载地址 http://system.data.sqlite.org/index.html/doc/trunk/www/downloads.wiki

    

EF操作sqlite数据库时的项目兼容性问题

  

问题:安装拓展,数据源可以操作sqlite,证明拓展成功了。

   但是实体数据模型edmx还是没法操作sqlite,可能是官网的拓展做的不行,也可能是vs2015的处理机制不一样了,导致了不兼容

  EF操作sqlite数据库时的项目兼容性问题

EF操作sqlite数据库时的项目兼容性问题

找资料:

  从*上得知一个曲折方法:

    http://*.com/questions/12809929/sqlite-1-0-82-0-latest-in-visual-studio-2012-not-showing-in-designer-data-sour/14111527#14111527

    大体意思:用nuget添加system.data.sqlite可以了

  EF操作sqlite数据库时的项目兼容性问题

尝试操作:
    

  EF操作sqlite数据库时的项目兼容性问题

  EF操作sqlite数据库时的项目兼容性问题

EF操作sqlite数据库时的项目兼容性问题

EF操作sqlite数据库时的项目兼容性问题

 

    EF操作sqlite数据库时的项目兼容性问题

    

    补充:这里是因为Nuget里面的Sqlite依赖EF6,所以会有这么多库被引用。

    pass:vs2010直接打开该项目是没法正常使用的

    EF操作sqlite数据库时的项目兼容性问题

   

结论:

  重申我的问题:让vs2015兼容vs2010创建的edmx文件

  虽然问题二中实现了vs2015可以正常使用自己的实体数据模型去操作sqlite,但并没有解决我的问题(依然不兼容vs2010创建的edmx文件)

  那么现在的话暂时只能安装两个vs版本分别操作代码了(用到edmx的时候,再用vs2010去操作)。

  用过sqlserver和mysql数据库,vs2015的拓展兼容性都没问题,偏偏sqlite出问题了

  等待sqlite官网让vs2015的拓展可以实现问题一中的理想状态,不用像问题二中搞得这么复杂

链接:

  Visual Studio 2015使用EF6的DBFirst模式操作Sqlite数据库

EF6操作Sqlite数据库的项目兼容性问题