如何使用不完整的服务定义调用WCF服务

时间:2017-05-24 13:33:33

标签: c# wcf

我正在尝试使用其他人创建的服务。我只有服务dll。但提供给我的说明并不完整。这是如何使用服务的示例,但是他们错过了变量条件的实例化。我怎样才能弄清楚变量是什么类型的? 。如果可能的话,我更愿意在不反编译dll的情况下解决问题。

public static void GetData()
{
    //ServiceReference1.ServicesClient client = null; 
    try
    {
        criteria.Settings = new CheckCall.CriteriaSettings();
        CheckCall.Criteria criteria1 = new CheckCall.Criteria();
        criteria1.Settings = new CheckCall.CriteriaSettings();
        criteria1.AsgnType = CheckcallAssignTypeEnum.Driver;
        criteria1.TractorNumber = "Tractor1";
        criteria.Expressions = new List<CheckCall.CriteriaExpression>();
        criteria.Expressions.Add(new CheckCall.CriteriaExpression
        {
            Conjuction = CriteriaSetting.ConjuctionEnum.OrOp,
            Criteria = criteria1
        });
    }
    catch(Exception ex)
    {
        Console.Write(ex);
    }
}

1 个答案:

答案 0 :(得分:2)

你可以使用JetBrains .Net反编译器 - dotPeek。(https://www.jetbrains.com/decompiler/

反编译dll,然后将反编译的项目添加到您的解决方案并进行调试。唯一的问题是你会收到一个可以在反编译后构建的项目

如果反编译不是选项/项目在反编译后出错 - 您可以通过对象浏览器查看.dll的内容。在参考文献中找到.dll,右键单击它并选择&#34;在对象浏览器中查看&#34;。您将看到.dll的名称空间,类及其方法。输入条件对象(设置或表达式)的任何属性名称,对象浏览器将过滤掉所有内容