在Datatable中按最后一次迭代覆盖记录 [英] Overwrite record by last iteration in Datatable

查看:84
本文介绍了在Datatable中按最后一次迭代覆盖记录的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如果我有3个IP地址,则其中两个处于活动状态,一个处于关闭状态。但

博士[状态] =Y;和博士[状态] =N;仅在所有记录中显示N.请帮助



If I have 3 IP address the out of which two are live and one is at Off state. but the
dr["Status"] = "Y"; and dr["Status"] = "N"; only shows N in all records. Please help

protected void Page_Load(object sender, EventArgs e)
        {
            SqlDataAdapter da = new SqlDataAdapter("SELECT PS, PS_IP_ADDRESS FROM m_police_station where STATE_CD=21 and PS_IP_ADDRESS is not Null and LANG_CD=99", con);
            DataSet ds = new DataSet();
            da.Fill(ds);

            List<string> strIP = new List<string>();    
            foreach(DataRow row in ds.Tables[0].Rows)
            {
                strIP.Add(row["PS_IP_ADDRESS"].ToString());
            }
         
            DataTable dt = ds.Tables[0];
            dt.Columns.Add("Status", typeof(string));
             
            foreach (DataRow dr in dt.Rows)
            {               
                foreach (string s in strIP)
                {
                    Ping p = new Ping();
                    PingReply r;
                                                //   String str = "10.0.0.0"; 
                    r = p.Send(s);
                    Response.Buffer = false;

                    if (r.Status == IPStatus.Success)
                    {
                        dr["Status"] = "Y";     //   Response.Write("Success \n");
                    }
                    else
                    {
                          dr["Status"] = "N";  //  Response.Write("fail");
                    }
                }

                Grid_Online_offline.DataSource = dt;
                Grid_Online_offline.DataBind();

            }

        }

推荐答案

if (r.Status == IPStatus.Success)
                    {
                        dr["Status"] = "Y";     //   Response.Write("Success \n");
                    }
                    else
                    {
                          dr["Status"] = "N";  //  Response.Write("fail");
                    }







您为IP更新的状态仅为N。请更改此内容。




The status you update for the IP is Only "N". Please change this.


这篇关于在Datatable中按最后一次迭代覆盖记录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆