WCF DataContract Serializer与Expression Body Property

时间:2016-06-20 16:10:20

标签: c# wcf serialization

这两个类应该是等价的:

的Class1.cs

[DataContract]
public class MyClass
{
    [DataMember]
    public int? UserId { get; set; }

    public bool IsAdmin
    {
        get { return UserId == null; }
    }
}

Resharper用表达体改变了这个:

class2.cs

[DataContract]
public class MyClass
{   
    [DataMember]
    public int? UserId { get; set; }

    public bool IsAdmin => UserId == null;
}

当我尝试序列化 class2.cs 时,它会抛出:

  

System.Runtime.Serialization.InvalidDataContractException:没有设置属性的方法' IsAdmin'在类型' MyClass'。

但是当我尝试使用WCF序列化 class1.cs 时,它按预期工作。

这有什么区别?

0 个答案:

没有答案