FineUI 官方论坛

标题: 求助 纳闷了 重新编译下项目 数据库就被 重置了. appbox4.0 [打印本页]

作者: bycnboy    时间: 2014-6-30 21:38
标题: 求助 纳闷了 重新编译下项目 数据库就被 重置了. appbox4.0
求助 纳闷了 重新编译下项目 数据库就被 重置了. appbox4.0

到底怎么用?

作者: sanshi    时间: 2014-7-1 09:22
学习下EF的CodeFirst开发模式,有代码可以控制:http://msdn.microsoft.com/en-us/data/ef.aspx

作者: treedun    时间: 2014-7-2 13:52
如果用EF+CODEFIRST,需要用数据迁移,这样可以只修改数据库对应的字段,否则就很杯具,以前我不知道,每次都删掉数据库。。。。。。。。。
作者: huxingz    时间: 2014-7-16 15:01
目录[Business] --> [Models] --> [GoodJobDatabaseInitializer.cs]

public class GoodJobDatabaseInitializer :
冒号后面代表的意思
//不存在才创建
CreateDatabaseIfNotExists<GoodJobContext>
//每次都重建
DropCreateDatabaseAlways<GoodJobContext>  
//如果修改了就重建
DropCreateDatabaseIfModelChanges<GoodJobContext>
作者: Mr.Wu    时间: 2014-7-16 17:56
这就是为什么说使用EF危险性很大了
作者: ^老鼠^    时间: 2014-7-23 17:53
EF确实有这个危险情况存在
作者: sanshi    时间: 2014-7-23 22:25
^老鼠^ 发表于 2014-7-23 17:53
EF确实有这个危险情况存在

这不能叫危险吧,这是设计行为,知道就行了,就好像你可以编程几行代码删除一个磁盘的内容,但不能因此说代码危险吧.


就像前面说的:
  1. //不存在才创建
  2. CreateDatabaseIfNotExists<GoodJobContext>
  3. //每次都重建
  4. DropCreateDatabaseAlways<GoodJobContext>  
  5. //如果修改了就重建
  6. DropCreateDatabaseIfModelChanges<GoodJobContext>
复制代码

作者: huxingz    时间: 2014-7-24 10:12
sanshi 发表于 2014-7-23 22:25
这不能叫危险吧,这是设计行为,知道就行了,就好像你可以编程几行代码删除一个磁盘的内容,但不能因此说 ...

确实,大家只要根据那个修改一下行为,就可以避免这个问题.
我记得以前老的文档上面有这个说明,新的不知道怎么没有了.
作者: Farmer    时间: 2014-8-1 21:05
用楼上的CreateDatabaseIfNotExists就可以了。只要不改代码也没危险性。用户也根本改不了你的代码。
作者: biabiajiu    时间: 2015-10-14 20:51
刚刚入门,表示关注。。。
作者: Gnid    时间: 2015-10-14 23:57
看我的注释,就知道我的痛了:
Global.asax.cs中:[attach]7987[/attach]





欢迎光临 FineUI 官方论坛 (https://www.fineui.com/bbs/) Powered by Discuz! X3.4