zoukankan      html  css  js  c++  java
  • WCF下传递EF实体对象中出现异常:无法将 EntityReference 对象序列化

    近期项目采用了WCF+Entity Framework+WinForm的框架.使用一个Windows Service托管了WCF用于处理后的一些定时任务,并且充当着逻辑层来处理一些与前端的交互.在Winform运行过程中出现异常,如下图:

    image

    详细信息中:

    异常详细信息

    经过再三调试后我们发现,原因是在我的Winform的项目中增加了System.Data.Entity的引用后造成的.

    image

    下图是我在Winform,也就是WCF客户端中增加System.Data.Entity引用后所生成的DataItem类图

    image

    这时我在客户端中调用数据实体类时就会出现上述异常.可以看出在当前项目中生成的代理类完全使用了System.Data.Entity.EntityObject作为基类。但是从WCF服务端获取的数据契约类与其有所不同。

    解决方法:

    1、我去掉System.Data.Entity引用后,又重新生成了客户端代理。

    image

    自动生成的关系类图如下:

    image

    2、如果一定要在WCF客户端项目中引入System.Data.Entity则需要服务引用设置中将使用引用的程序集中的类型列表中将System.Data.Entity去掉便可。

    image

  • 相关阅读:
    数据库: Android使用JDBC连接数据库实现增 删 该 查 操作(8.0版本)
    SWA2G422&485JK2G基础篇: 手机APP通过APMACBind方式绑定W5500(以太网)设备,实现MQTT远程通信控制
    ESA2GJK1DH1K微信小程序篇: 微信小程序MQTT连接阿里云物联网平台
    ESA2GJK1DH1K基础篇: 阿里云物联网平台: 测试MQTT连接阿里云物联网平台
    ESA2GJK1DH1K微信小程序篇: 小程序MQTT底层优化
    ESP8266 SDK开发: 准备工作-硬件说明
    ESA2GJK1DH1K数据篇: 数据篇准备工作
    ESA2GJK1DH1K升级篇: 网页实现MQTT控制- 网页版MQTT通信控制ESP8266设备,网页版MQTT连接阿里云通信
    ESA2GJK1DH1K升级篇: 网页实现MQTT控制- 网页版MQTT调试助手
    单片机模块化程序: CRC校验
  • 原文地址:https://www.cnblogs.com/scally/p/2286885.html
Copyright © 2011-2022 走看看