2014-03-19 31 views
0

我在dt(0)处得到错误,说dt是一个变量,但像方法一样使用。 感谢您的帮助。我知道这似乎很简单,但我无法弄清楚。非常感谢您的帮助。错误:dt是一个变量,但像方法一样使用

private void pubSelectHL7Server() 
{ 

    try 
    { 
     //-> if valid ip address, no need to get from database. 
     if (HL7ServerIP.Trim().Split('.').Length == 4) 
      return; 
     //Dim ServiceName As String = String.Empty 
     //ServiceName = If(My.Settings.ServiceName.ToString.Length = 0, "IMG_JES", My.Settings.ServiceName) 

     classDataSource mClsDs = new classDataSource(); 
     //mClsDs.Add("HL7_SelectServer", "@pServiceName", SqlDbType.NVarChar, 10, ServiceName.ToString()); 
     mClsDs.Add("HL7_SelectServer", "@pServiceName", (Char)SqlDbType.NVarChar, 10, ServiceName); 

     using (DataTable dt = mClsDs.GetRs("LABIMAGEDB", "Constultation").Tables[0]) 
     { 
      if (dt != null && dt.Rows.Count > 0) 
      { 
       HL7ServerIP = dt(0)("ServerIP").ToString(); 
       HL7SendPort = dt(0)("SendPort").ToString.Trim; 
       TempLogFolder = dt(0)("TempLogFolder").ToString.Trim; 
       StopSendPort = Module1.CheckNullIntegerToBoolean(dt(0)("StopSendPort")); 
      } 
     } 
     writeMessage("ServiceName " + ServiceName, true); 
    } 
    catch (Exception ex) 
    { 
     //MessageBox.Show(ex.Message, "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1) 
     ModuleHl7.WriteExeptionLog(ex, "-PubSelectHL7sERVER. Error Getting Connection Info"); 
    } 

} 
+1

也许试试'dt [0](“ServerIP”)。ToString'? – Spook

回答

2

我假设你指望DataTable包含单个DataRow,你要访问它的领域。然后你就可以通过DataTable.Rows[0].Field让他们:

HL7ServerIP = dt.Rows[0].Field<string>("ServerIP"); 

请注意,你不圆括弧访问数组或列表(在VB.NET),但方括号。

+0

感谢您的建议蒂姆。 – Slaf

相关问题