Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
实体框架6-客户端应用程序.net框架4?_.net_Entity Framework - Fatal编程技术网

实体框架6-客户端应用程序.net框架4?

实体框架6-客户端应用程序.net框架4?,.net,entity-framework,.net,Entity Framework,目前我们已经运行了EFV4.3。服务器本身安装了.net framework 4.0,客户机也安装了.net framework 4.0 应用程序层被划分为不同的解决方案文件,因此我们可以针对不同的.net框架 应用程序的客户端版本设置为在.net framework 4.0上运行 我们希望将实体框架升级到版本6。由于我们可以控制我们的服务器,因此我们可以很容易地升级服务器上的.net framework,但我们不能从4.0升级客户端PC上的.net framework 我是否可以为.net 4

目前我们已经运行了EFV4.3。服务器本身安装了.net framework 4.0,客户机也安装了.net framework 4.0

应用程序层被划分为不同的解决方案文件,因此我们可以针对不同的.net框架

应用程序的客户端版本设置为在.net framework 4.0上运行

我们希望将实体框架升级到版本6。由于我们可以控制我们的服务器,因此我们可以很容易地升级服务器上的.net framework,但我们不能从4.0升级客户端PC上的.net framework


我是否可以为.net 4.0构建一个客户端,但可以通过WCF与Entity Framework 6通信?如果是这样,我需要注意哪些限制?

让客户机通过WCF与使用EF6的服务器通信不应该是任何问题。如果您至少在模型中使用POCO类,那么您就不需要在客户端中引用EF

我通常在我的数据模型类和我向客户机发送/从客户机接收的视图类之间实施分离,因此当您从服务器中的数据库中提取实体时,手动创建一个视图类并通过wcf而不是直接通过您的模型传递该视图类,通过这种方式,模型可以更改,而不会对发布的接口产生任何影响,并且客户端无法访问不应该访问的字段(ID字段等)

还意味着:

  • 您的DataContract可以根据您提供的方法的确切意图进行更多的定制
  • 您不必担心将发送/接收的实例分离/重新附加到数据上下文

  • EF6可以与.NET 4.0一起使用。可能的重复如果您在针对.NET 4.0的同一项目中使用EF6,那么您只能获得EF4.3中可用的EF功能-我想知道,如果在WCF中使用不同的项目,我是否可以在服务器端与.NET 4.0一起在客户端使用EF6的新功能我们正在使用POCO,因此看起来很适合升级到EF6。关于通过WCF传递视图类的有趣想法-我必须更详细地研究它以获得更好的理解