在WCFService调用结束后,在客户端不执行进一步的代码

时间:2015-10-11 19:24:13

标签: c# wcf

我想在客户端显示一个消息框当从服务返回一个呼叫时。

确认服务运行并将数据保存到数据库中,但调用不会返回。

我谷歌但却找不到方法

这是我的客户代码

private void button1_Click(object sender, EventArgs e)
        {
            try {
                string ide = txt_id.Text;
                int id = int.Parse(ide);
                string city = txt_city.Text;

                Service1Client client = new Service1Client();

                if (client.insert(id, city))
                {
                    client.Close();
                    MessageBox.Show("Your changes were saved");

                }
            }
            catch(Exception ex)
            {
                Console.WriteLine(ex);
            }
        }

服务代码

public bool insert(int id,string city)
{
    Ship s = new Ship
    {
        order_id = id,
        shipcity = city,
        order_date = DateTime.Now
    };
    ShipsDataContext od = new ShipsDataContext();
    od.Ships.InsertOnSubmit(s);
    try
    {

        od.SubmitChanges();

        Console.ReadKey();
        return true;
    }
    catch (Exception ex)
    {
        Console.WriteLine(ex);
        return false;

    }
}

1 个答案:

答案 0 :(得分:0)

您正在等待控制台输入:

Console.ReadKey();

顺便说一句,错误处理是一个问题,因为你正在抑制错误(通过丢弃所有错误信息),如果出现错误,你什么都不做。