Csharp/C#教程:如果我们使用具有代码优先方法的Entity框架,是否可以在给定路径上创建数据库(Sql Server compact)?分享


如果我们使用具有代码优先方法的Entity框架,是否可以在给定路径上创建数据库(Sql Server compact)?

我对Entity框架有点困惑,我想使用代码优先方法; 事实上,我想写一下我的数据库表是如何通过类定义组成的。

主要的问题是我需要创建一个数据库(或打开它),通过选择它的路径(用户可以选择打开哪个数据库,并可以根据需要创建新的数据库)。 我已经选择了Sql server compact来实现这一点,但是我仍然不明白如何使用代码优先方法来处理这种情况,因为我不明白如何选择应该使用代码优先方法创建数据库的位置,如果是可能。

任何人都可以解释我做错了什么,并建议一个不同的路线,如果有的话? 谢谢

我几天前遇到了同样的问题。 以下是我如何使用它:

在应用程序启动代码中添加以下内容:

using System.Data.Entity.Database; // ... DbDatabase.SetInitializer(new MyDbInitializer()); DbDatabase.DefaultConnectionFactory = new SqlCeConnectionFactory( "System.Data.SqlServerCe.4.0", @"C:PathTo", @"Data Source=C:PathToDbFile.sdf"); 

初始化程序应如下所示:

 using System.Data.Entity.Database; public class MyDbInitializer : CreateDatabaseIfNotExists { protected override void Seed(MyDbContext context) { // create some sample data } } 

如果CreateDatabaseIfNotExists不是你想要的东西,你可以使用更多种类的初始化器,或者你也可以创建自己的初始化器。 有关这方面的更多信息,请访问:

https://blog.oneunicorn.com/2011/03/31/configuring-database-initializers-in-a-config-file/

希望这可以帮助。

上述就是C#学习教程:如果我们使用具有代码优先方法的Entity框架,是否可以在给定路径上创建数据库(Sql Server compact)?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1001105.html

(0)
上一篇 2021年12月28日
下一篇 2021年12月28日

精彩推荐