0

我已经WCF service在我的机器上运行。

[DataContract]在类 [DataMember]之前添加 在每个类成员之前添加。

我没有[DataMember]在类属性之前添加。

[OperationContract] added before service interface:

    [OperationContract]
    MyObject GetMyObject();

和服务实现:

public MyObject GetXmlFile()
{
    // Bla bla
    MyObject obj = new MyObject ();
    MyObject obj = obj.GetAll();
    return obj;
}

当用调试器检查这个时,我可以看到对象成功创建MyObject obj.GetAll(); 但在主程序中它返回 null。

这就是我返回类对象的方式:

public MyObject GetAll()
{
    _xmlPath = xmlPath;
    _xml = new XmlDocument();
    _xml.Load(xmlPath);
    GetFirstAttributes(); // Fill up my object with details from XML file
    GetSecondAttributes(); // Fill up my object with details from XML file
    return this;
}

主要的:

        Uri uri = new Uri("http://" + ip + ":8733/MyService");
        ServiceReference1.XMLServiceClient service = new ServiceReference1.XMLServiceClient();
        service.Endpoint.Address = new EndpointAddress(uri);
        ServiceReference1.MyObject xml = service.GetXmlFile();
4

1 回答 1

0

您必须在方法 GetXmlFile 上设置 OperationContract 属性

于 2013-10-25T14:55:57.870 回答