定義哈西表
string sql = "select yearly,monthly,buid,category,accno from setFssForecast where yearly=" + yearly
+ " and category='" + category + "' and version='" + version + "'";
CommClass.PubFunction func = new CommClass.PubFunction();
System.Data.DataSet ds=new DataSet();
ds=func.GetDataTable(sql);
if (ds.Tables[0].Rows.Count>0)
{
for (int i=0 ;i<ds.Tables[0].Rows.Count;i++)
{
string [] dkey={ds.Tables[0].Rows[i][0].ToString().Trim(),ds.Tables[0].Rows[i][1].ToString().Trim(),ds.Tables[0].Rows[i][2].ToString().Trim(),
ds.Tables[0].Rows[i][3].ToString().Trim() ,ds.Tables[0].Rows[i][4].ToString().Trim()};
string dvalue="";
if ((string)ht[dkey]==null)
{
ht.Add(dkey,dvalue);
}
}
}後來查找哈西表 string[] dkey={yearly.ToString().Trim(),monthly.ToString().Trim(),buid.ToString().Trim(),CateGory.Trim(),accno.Trim()};
string tmp2=(string)hs_FssForeCast[dkey];
if (tmp2==null)
{
sb.Append(" insert " );
}
else
{
sb.Append("update");
}發現問題:
dkey確定在哈希表內存在,但是無法查找到,每次都是執行sb.Append(" insert " );
不知道是出現什麼問題???
string sql = "select yearly,monthly,buid,category,accno from setFssForecast where yearly=" + yearly
+ " and category='" + category + "' and version='" + version + "'";
CommClass.PubFunction func = new CommClass.PubFunction();
System.Data.DataSet ds=new DataSet();
ds=func.GetDataTable(sql);
if (ds.Tables[0].Rows.Count>0)
{
for (int i=0 ;i<ds.Tables[0].Rows.Count;i++)
{
string [] dkey={ds.Tables[0].Rows[i][0].ToString().Trim(),ds.Tables[0].Rows[i][1].ToString().Trim(),ds.Tables[0].Rows[i][2].ToString().Trim(),
ds.Tables[0].Rows[i][3].ToString().Trim() ,ds.Tables[0].Rows[i][4].ToString().Trim()};
string dvalue="";
if ((string)ht[dkey]==null)
{
ht.Add(dkey,dvalue);
}
}
}後來查找哈西表 string[] dkey={yearly.ToString().Trim(),monthly.ToString().Trim(),buid.ToString().Trim(),CateGory.Trim(),accno.Trim()};
string tmp2=(string)hs_FssForeCast[dkey];
if (tmp2==null)
{
sb.Append(" insert " );
}
else
{
sb.Append("update");
}發現問題:
dkey確定在哈希表內存在,但是無法查找到,每次都是執行sb.Append(" insert " );
不知道是出現什麼問題???
Int16 i;
int j=1;
string[] arr1 = new string[3];
arr1[0] = System.Convert.ToString(j * 10);
arr1[1] = System.Convert.ToString(j * 100);
arr1[2] = System.Convert.ToString(j * 1000); for ( i = 1; i <= 3; i++)
{
string[] arr = new string[3];
arr[0] = System.Convert.ToString(i * 10);
arr[1] = System.Convert.ToString(i * 100);
arr[2] = System.Convert.ToString(i * 1000);
hs.Add(arr, i);
}
string ret = (string)hs[arr1];vb轉換過來的代碼,vb通過。但是c#出現問題同上面一樣
+ " and category='" + category + "' and version='" + version + "'";CommClass.PubFunction func = new CommClass.PubFunction();
System.Data.DataSet ds=new DataSet();
ds=func.GetDataTable(sql);
if (ds.Tables[0].Rows.Count>0)
{
for (int i=0 ;i<ds.Tables[0].Rows.Count;i++)
{
string dkey=ds.Tables[0].Rows[i][0].ToString().Trim()+ds.Tables[0].Rows[i][1].ToString().Trim()+ds.Tables[0].Rows[i][2].ToString().Trim()+
ds.Tables[0].Rows[i][3].ToString().Trim()+ds.Tables[0].Rows[i][4].ToString().Trim();
string dvalue="";
if ((string)ht[dkey]==null)
{
ht.Add(dkey,dvalue);
}
}
}後來查找哈西表string dkey=yearly.ToString().Trim()=monthly.ToString().Trim()=buid.ToString().Trim()=CateGory.Trim(),accno.Trim();string tmp2=(string)hs_FssForeCast[dkey];