(1)异步调用:
shPDA.WRServer.Service yq = new shPDA.WRServer.Service();
string sql = "select count(*) from 水位预警 where 发布时间>'" + System.DateTime.Now.ToShortDateString() +"'";
yq.Begingetapp(sql,new AsyncCallback(MyHelloWorld),yq);//调用异步方法
//声明异步方法:
public void MyHelloWorld(IAsyncResult iar)
{
int count = 0;
shPDA.WRServer.Service yq = (shPDA.WRServer.Service)iar.AsyncState;
DataSet dt = yq.Endgetapp(iar);
//结束远程调用
string tmp = dt.Tables[0].Rows[0][0].ToString();
if (tmp != "")
count = System.Convert.ToInt32(tmp);
dt = yq.getapp("select count(*) from 降雨预警 where 发布时间>'" + System.DateTime.Now.ToShortDateString() + "'");
tmp = dt.Tables[0].Rows[0][0].ToString();
if (tmp != "")
count += System.Convert.ToInt32(tmp);
if (count > 0)
{ SetText( "今天是" + System.DateTime.Now.ToString("yyyy年MM月dd日,今日" + count.ToString() + "处预警提示!")); }
else
{
SetText("今天是" + System.DateTime.Now.ToString("yyyy年MM月dd日,今日无预警提示!") );
//settext即下边的委托操作
}
}
(2)控件操作:
private delegate void SetTextCallback(string text);
private void SetText(string text)
{
// Invokerequired需要比较调用线程ID和创建线程ID
// 如果它们不相同则返回true
if (this.alphaLabel2.Invokerequired)
{
SetTextCallback d = new SetTextCallback(SetText);
this.Invoke(d,new object[] { text });
}
else
{
this.alphaLabel2.Text += text + '/n'; } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。