none
DataContract不可以用于接口吗?要如何解决? RRS feed

  • 问题

  • 代码:

        [DataContract]

        public interface IPerson

        {.....}

    编译不通过:Error 1 Attribute 'DataContract' is not valid on this declaration type. It is only valid on 'class, struct, enum' declarations.

    请问一下,只能把DataContract应用于具体类吗?不可以用于接口?有没其他解决方案。谢谢!

    2010年9月14日 2:09

答案

  •  [DataContract]标注 会告诉数据契约序列化器来序列化这个类。

    接口定义的是契约关系,WCF里使用接口作为服务契约。

    是服务之间的一个约定。

     数据契约,DataContract只是一个实体类,用来装载数据,可以在运行时序列化和反序列化。

     


    Frank Xu Lei--谦卑若愚,好学若饥
    专注于.NET平台下分布式应用系统开发和企业应用系统集成
    Focus on Distributed Applications Development and EAI based on .NET
     

    老徐的网站】:http://www.frankxulei.com/

    老徐的博客】:http://www.cnblogs.com/frank_xl/

    微软WCF中文技术论坛
    微软WCF英文技术论坛

    • 已标记为答案 Tony_Wu 2010年9月14日 7:01
    2010年9月14日 5:00
    版主