如何在 wcf 中使用现有类作为数据协定

本文关键字:数据 wcf | 更新日期: 2023-09-27 18:34:46

我们计划将Windows服务升级到WCF服务,我知道这与问题无关。在多个 dll 中定义了数百个类。

我正在做一些研发,通过WCF服务传递下面代码中显示的现有类对象

[ServiceContract]
public interface IService1
{
    [OperationContract]
    UserSession LoginUser(User user);
}

上述代码中使用的"UserSession"和"User"类是程序集中预定义的普通类。由于这些类未定义为"数据协定",因此服务无法序列化它们。

我无法将这些类重新定义为"数据契约"。有没有办法使用现有类作为"数据契约"在客户端和服务器之间顺利通信。

注意 - 我已经经历了这个,数百节课的学习还有很长的路要走。

提前致谢

如何在 wcf 中使用现有类作为数据协定

我已经四处寻找解决方案,允许您将整个类作为 DataContract 发送,但它似乎不存在。我能给出的最佳建议是使用读取器检索这些类中的数据,然后通过 Datacontract 发送数据。但我认为这正是你不想做的事情。