知道codefirst,但从来没用过。。
要DDD也没必要codefirst吧。

解决方案 »

  1.   

    看下这篇教程:http://msdn.microsoft.com/en-us/data/jj591621.aspx
      

  2.   


    感谢大哥的回复,场景有点不一样,我平时更新数据是用Migrations,但是现在还没用到这一步。我的场景是这样的,我在vs上创建了用CodeFirst第一次创建了数据库成功,我建立了很多测试数据,现在要把代码移交给其他部门,所以我copy了项目给他们(除了APP_DATA这个文件夹,因为里面有我的私人数据),我想他们运行项目的时候第一次就会创建一个新的数据库了!但我copy了给他们,他们第一次运行一直报无法找到 app_data/xx.mdf 文件,按理我继承了CreateDatabaseIfNotExists ,项目找不到数据库应该会自动重建的,现在不会自动重建,想找出问题在哪里。
      

  3.   


    感谢大哥的回复,场景有点不一样,我平时更新数据是用Migrations,但是现在还没用到这一步。我的场景是这样的,我在vs上创建了用CodeFirst第一次创建了数据库成功,我建立了很多测试数据,现在要把代码移交给其他部门,所以我copy了项目给他们(除了APP_DATA这个文件夹,因为里面有我的私人数据),我想他们运行项目的时候第一次就会创建一个新的数据库了!但我copy了给他们,他们第一次运行一直报无法找到 app_data/xx.mdf 文件,按理我继承了CreateDatabaseIfNotExists ,项目找不到数据库应该会自动重建的,现在不会自动重建,想找出问题在哪里。
    你是怎么用的?看看这个帖子:
    http://stackoverflow.com/questions/5414130/entity-framework-code-first-isnt-creating-the-database
      

  4.   

    @webdiyerhttp://pan.baidu.com/share/link?shareid=1697330141&uk=1528043962项目文件在这里 可以下载下来看看,直接F5就行
      

  5.   

    请问下最后是怎么解决的。
    ::>_<::
      

  6.   

    I've found solution.
    So deleting the file from Visual Studio was a dumb idea.SQL still has it registered.Fire up MS Sql Management Tool, connect to the server in my case(local)\v11.0You will see the database, still exists, delete it, you will get an error. The file doesn't exist. Refresh and its gone from SQL. Now run your code again and all is good.So delete the DB from the management tool not visual studio.
    reference:http://stackoverflow.com/questions/16381418/an-exception-occurred-while-initializing-the-database
    就是删掉文件之后,应该在SQL SERVER的management tool里面连接(local)\v11.0,查看建立的数据库,双击会提示文件不存在,然后点删除会提示有问题,再刷新数据库就自动删掉了,再回去VS2013上运行程序就可以重建数据库了。