我正在关注Lerman的EF Code First一书,你在本书中做的一件事就是创建一个类库项目,在其中定义一个将继承自DbContext的类。为此,您需要安装Entity Framework。执行此操作时,将添加两个文件:App.config和packages.config。
然后添加一个控制台项目,并在using语句中使用全新的上下文类。您将遇到相当多的错误,因为Console Project没有对EntityFramework.dll和EntityFramework.SqlServer.dll的引用,也因为我没有使用SQL Server Express,而是完整版。
现在有两种选择。第一个是在控制台项目中安装实体框架。另一个选项是通过添加引用并从最近的选项卡添加它们来引用这两个.dll。
第一个选项将再次添加App.config和packages.config文件,但这次是添加到控制台项目中。
第二种选择没有。但是尝试运行应用程序会引发异常,因为它正在寻找连接字符串,而它找不到任何连接字符串。我找到的解决方案是将类库项目中的App.config复制到控制台项目,并在复制的App.config中放入connectionString部分。
但这提出了一个问题:
我可以删除以下哪些文件?我似乎能够从DataAccess项目中删除packages.config和App.config没有任何麻烦。控制台项目似乎需要App.config。
答案 0 :(得分:2)
如果您首先使用代码(如果您首先使用的是模型或数据库),那么您本身就不需要库项目中的app.config ..每次你添加项目或执行需要配置的操作,将添加一个新项目,因此您可以将其保留在那里。
您应该保留packages.config,因为这会跟踪您已安装的软件包的版本,以便您以后可以更轻松地升级。
如果您首先使用数据库或模型,设计人员需要app.config告诉它要使用的连接字符串。