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

  • 相关阅读:
    centos 配置php
    Linux下端口被占用解决
    LUOGU P1040 加分二叉树
    bzoj 1057: [ZJOI2007]棋盘制作
    1858: [Scoi2010]序列操作
    poj 2559 Largest Rectangle in a Histogram
    2018/7/19 模拟赛
    SPOJ 2916 GSS5
    BZOJ 4004: [JLOI2015]装备购买
    CF 549B Looksery Party
  • 原文地址:https://www.cnblogs.com/scally/p/2286885.html
Copyright © 2011-2022 走看看