繁体   English   中英

从WSDL中找不到类型

[英]Unable to find a type from WSDL

我正在尝试使用以下Web服务,以获取在线测验结果列表。 不幸的是,没有提供者的帮助。 他们的其他Web服务对我们来说很好。 这就是我们正在努力的那个。

https://opendoor.lg.lumesse.com/webservices/services/LearningStatusRecords?wsdl

该手册指定以下内容:

“ LearningStatusRecords”服务包括两种方法:

  1. FetchLearningStatusRecords
  2. AcknowledgeLearningStatusRecords主要功能由“ FetchLearningStatusRecords”方法处理。

响应返回:

  1. 多达1000条包含用户信息,活动信息,结果和相关日期的记录,

  2. 标记是否还有更多记录要检索,

  3. 检索到的记录的唯一令牌(如果没有检索到记录,则没有令牌)

如果我正确地遵循WSDL文件,应该有一个可以实例化的对象称为LearningStatusRecords ,但是IntelliSense不会显示此信息:

在此处输入图片说明

我可以实例化FetchLearningStatusRecordsRequest ,并可以访问手册中描述的属性,但是找不到任何方法将该请求与响应相关联。

我对WSDL文件了解得越多,就会越容易混淆。 我还看到web.config中的条目说存在一些问题,但不确定是否是引起此问题的原因。

好的我明白了:

尝试通过测试并通过:

using ServiceReference1;

public class ServiceTestClass
{
    public ServiceTestClass()
    {
        using (var client = new LearningStatusRecordsPortTypeClient())
        {
             LearningStatusRecordsFetchResponse result1 = client.FetchLearningStatusRecords(
           new LearningStatusRecordsFetchRequest());

               foreach (LearningStatusRecord lsr in result1.LearningStatusRecordsList)
                {
                    Console.WriteLine(lsr.RecordStatus);
                }

           LearningStatusRecordsAcknowledgeResponse result2 =  client.AcknowledgeLearningStatusRecords(
                new LearningStatusRecordsAcknowledgeRequest());
        }
    }
}

当您将wsdl添加到ServiceReference时,您可以看到此示例中的语言类是LearningStatusRecordsPortTypeClient

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM