Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从Win表单应用程序调用WCF REST服务_C#_Json_Winforms_Wcf Rest - Fatal编程技术网

C# 从Win表单应用程序调用WCF REST服务

C# 从Win表单应用程序调用WCF REST服务,c#,json,winforms,wcf-rest,C#,Json,Winforms,Wcf Rest,我正在创建一个测试工具来测试我的WCF REST服务。这将以json的形式返回数据。为了测试pupose,我创建了一个工具,该工具在textbox上提供json字符串作为输入。因此,数据被反序列化为dataset或datatable并显示为网格。这是为了可读性和数据测试 我现有的按钮方法如下所示 pnlOutput.Controls.Clear(); JsonTextReader reader = new JsonTextReader(new StringReader(txtIn

我正在创建一个测试工具来测试我的WCF REST服务。这将以json的形式返回数据。为了测试pupose,我创建了一个工具,该工具在textbox上提供json字符串作为输入。因此,数据被反序列化为dataset或datatable并显示为网格。这是为了可读性和数据测试

我现有的按钮方法如下所示

    pnlOutput.Controls.Clear();
    JsonTextReader reader = new JsonTextReader(new StringReader(txtInput.Text));
    string data = "";
    while (reader.Read())
    {
        data += reader.Value;
    }

    if (data.Contains("Table"))
    {
        DataSet ds;
        ds = JsonConvert.DeserializeObject<DataSet>(data);


        int topPosition = 0;
        foreach (DataTable dataTable in ds.Tables)
        {
            DataGrid grid = new DataGrid();
            grid.DataSource = dataTable;
            pnlOutput.Controls.Add(grid);
            grid.Top = topPosition;
            grid.Width = pnlOutput.Right - 10;
            grid.Height = (pnlOutput.Height / ds.Tables.Count) - 10;
            topPosition = grid.Height + 5;
        }
    }
    else
    {
        DataTable dt;
        dt = JsonConvert.DeserializeObject<DataTable>(data);
        DataGrid grid = new DataGrid();
        grid.DataSource = dt;
        pnlOutput.Controls.Add(grid);
        grid.Width = pnlOutput.Right - 10;
        grid.Height = pnlOutput.Height - 10;

    }
该工具将输入作为json字符串。现在我想再添加一个文本框,这样我就可以将服务url直接提供给该测试框。在一个按钮中,单击需要从url获取json数据,并像以前一样执行功能


有人能帮我确定一下这种可能性吗。我不需要添加服务引用,因为这是测试任何WCF服务的通用工具

你说的识别这种可能性是什么意思?对不起,我的英语。实际上,我的意思是我需要直接从服务获取数据,而不需要添加服务引用。通过jquery,我们可以使用url直接调用服务方法。同样,我正在尝试Win表单应用程序。您可以使用HttpWebRequest来实现这一点。签出以便可以从Windows窗体应用程序使用HttpWebRequest。所以我不需要添加服务参考?谢谢朋友,我完成了