stringBuild里面的XML文件,转化为DataSet

现有

    /// <summary>
        
/// 生成BLCM02报文
        
/// </summary>
        
/// <param name="sender"></param>
        
/// <param name="e"></param>

        private void GetMessage_BLCM02()
        
{
            str_BLCM02
=new StringBuilder();
            str_BLCM02.Append(
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
            str_BLCM02.Append(
"<Message><Message_Head>");
            str_BLCM02.Append(
"<Message_Type>BLCG01</Message_Type>");
            str_BLCM02.Append(
"<Message_ID>0000010000022006021418000000</Message_ID>");
            str_BLCM02.Append(
"<Sender_ID>000001</Sender_ID>");
            str_BLCM02.Append(
"<Receiver_ID>000002</Receiver_ID>");
            str_BLCM02.Append(
"<Sender_IP>192.168.0.1</Sender_IP><Receiver_IP>192.168.0.2</Receiver_IP><Sender_Port>3333</Sender_Port><Receiver_Port>3334</Receiver_Port><Send_Date>20060214</Send_Date><Send_Time>18000000</Send_Time><Version>001</Version><Message_Ref>0000010000022006021418000000</Message_Ref><Pic_Type>0</Pic_Type><Notes>备注</Notes>");
            str_BLCM02.Append(
"</Message_Head>");
            str_BLCM02.Append(
"<Message_Body><Exception_Traffic_Info><Err_No>200602140001</Err_No><IO_No>IO20060214180000</IO_No><Entr_No>0002</Entr_No><Entr_Name>社会车辆入场通道</Entr_Name><IC_Num>012345678</IC_Num><Ve_Num>苏E12345</Ve_Num><Entr_Pic> </Entr_Pic><Ve_Pic> </Ve_Pic><IO_Time>20060214T18000000</IO_Time><Exception>权限校验不通过</Exception></Exception_Traffic_Info></Message_Body>");
            str_BLCM02.Append(
"</Message>");
        }
其中定义了
 StringBuilder str_BLCM02;//通行异常信息(车辆)
把string 转化为DataSet如下:
    private void Show_Message()
        
{
            DataSet ds
=new DataSet();
            
try
            
{
                
string str=str_BLCM02.ToString();                
                System.IO.StringReader reader 
= new System.IO.StringReader(str);
                ds.ReadXml(reader);  
                DataTable dt1
=ds.Tables["Message_Head"];
                DataTable dt2
=ds.Tables["Exception_Traffic_Info"];
                
//根据通道编号决定显示位置
                string str_channel1=System.Configuration.ConfigurationSettings.AppSettings["channel1"];
                
string str_channel2=System.Configuration.ConfigurationSettings.AppSettings["channel2"];
                
if (str_channel1==dt2.Rows[0]["Entr_No"].ToString())
                
{
                    FillDataToFrm(
0,dt2);
                }

                
if (str_channel2==dt2.Rows[0]["Entr_No"].ToString())
                
{
                    FillDataToFrm(
1,dt2);
                }

            }

            
catch
            
{

            }

            
        }

posted @ 2006-03-01 13:09  jhtchina  阅读(442)  评论(0)    收藏  举报