对不起,WCF烦你。 :)异步数据和WCF?
到目前为止,我已经做了一个小型的客户端 - 服务器应用程序,客户端可以将数据传递到服务器端的功能并接收结果。
但是,某种程度上客户端应用程序能够向服务器“打开长期连接”并从中接收异步数据吗?
然后只是连接 - >诱发功能&传递参数 - >获得重播 - >断开连接。
谢谢!
客户端:
using System.ServiceModel;
namespace ser2client
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
CalculatorClient client = new CalculatorClient();
private void button1_Click(object sender, EventArgs e)
{
int v1 = Convert.ToInt16(textBox1.Text);
int v2 = Convert.ToInt16(textBox2.Text);
int res = 0;
if (tb_action.Text == "+")
{
res = client.Add(v1, v2);
}
else if (tb_action.Text == "-")
{
res = client.Subtract(v1, v2);
}
label1.Text = "= " + Convert.ToString(res);
}
}
}
服务器:
using System.ServiceModel;
using System.ServiceModel.Description;
namespace server
{
[ServiceContract(Namespace = "http://server")]
public interface ICalculator
{
[OperationContract]
int Add(int n1, int n2);
[OperationContract]
int Subtract(int n1, int n2);
}
public class CalculatorService : ICalculator
{
public int Add(int n1, int n2)
{
int result = n1 + n2;
Console.WriteLine(Convert.ToString(n1)+"+"+Convert.ToString(n2)+"="+result);
Console.WriteLine("");
return result;
}
public int Subtract(int n1, int n2)
{
int result = n1 - n2;
Console.WriteLine(Convert.ToString(n1) + "-" + Convert.ToString(n2) + "=" + result);
Console.WriteLine("");
return result;
}
}
你能显示任何代码吗? – 2011-04-08 11:55:57
当然,刚添加它。我没有发布它,因为它与服务器返回的异步数据没有任何关系。 – Roger 2011-04-08 12:01:38