从 SQL Server CE 切换到 SQL Server Express 实体问题
我的应用程序使用 SQL Server Ce 作为数据库,使用实体框架作为 ORM。 现在我尝试切换到 SQL Server Express,但遇到了困难。
更新
因此,在我绞尽脑汁 3 小时后,我终于发现不能使用从 SQL Server CE 数据库生成的实体模型来对抗 SQL Server(在我的例子中是 Express 版本)。
我使用 Diff 程序查看两个数据库生成的文件 (Designer.cs),并注意到文件中的这些差异:
SQL Server CE SQL Server
FK__Download__000000000000003F FK__Download__PlaneI__0519C6AF
因此我必须创建两个实体模型,但如何在程序中的两个实体模型之间进行交换?
如果我创建两个实体模型,我将有两个具有相同对象名称的类。
提前致谢
My application uses SQL Server Ce for the database and Entity Framework as the ORM.
Now I'm trying to switch to SQL Server Express but I'm having trouble doing so.
UPDATE
So after banging my head for 3 hours I finally figured out that you cannot use an Entity model generated from a SQL Server CE database against a SQL Server (in my case Express version).
I used a Diff program to view the generated files (Designer.cs) for both databases and I noticed these differences in the file:
SQL Server CE SQL Server
FK__Download__000000000000003F FK__Download__PlaneI__0519C6AF
So I have to create two entity models, but how can I interchange between the two in my program?
If I create two entity models, I'll have two classes with the same object names.
Thanks in advance
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
EDMX 文件实际上由三部分组成。
通常,这三个部分作为资源嵌入到程序集中,并且您使用的连接字符串告诉运行时在该程序集中查找它们。
但是,您可以使用物理文件并将它们与您的应用程序一起部署。通过这种方式,您可以针对特定数据库使用相同的 CSDL,但使用不同的 SSDL/MSL 集。通过这种方式,您可以针对 SqlCE 数据库和 SQL Server 数据库重用实体模型。
在这里您可以找到有关交换 EF 元数据的博客文章
The EDMX file actually consists out of three parts.
Normally these three parts are embedded in as a resource in your assembly and the connection string that you use tells the runtime to look for them in that assembly.
You can however use physical files and deploy them with your application. In such a way you can use the same CSDL but a different set of SSDL/MSL for the specific database. In that way you can reuse your entity model against both your SqlCE database and a SQL Server database.
Here you can find a blog post about swapping EF metadata