当我制作2个参数时。当光标上突出显示ahref没有获取值时,作为第一个参数?但总是得到其父母的价值。 我应该如何处理以下代码: 请帮助纠正我的代码的错误/缺点。
private string LoadNavigasi(string kodeJabatan, ref int countLoop)
{
if (kodeJabatan == null)
kodeJabatan = "001";
DataSet ds = RunQuery("Select KodePosition,NamaPosition,Parent from Position where KodePosition = '" + kodeJabatan + "'");
string temp = string.Empty;
string tempP = string.Empty;
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
var kode = ds.Tables[0].Rows[i][0].ToString();
var nama = ds.Tables[0].Rows[i][1].ToString();
var parent = ds.Tables[0].Rows[i][2].ToString();
if (parent == "")
parent = null;
temp = string.Format("<a href=?Kode=" + kode + "&Name=" + nama + ">{0}</a>", nama);
tempP = string.Empty;
countLoop++;
if (parent != null)
{
tempP = string.Format("{0}", LoadNavigasi(parent, ref countLoop));
temp = string.Format("{1}<ul><li>{0}", temp, tempP);
}
else
{
temp = string.Format("{0}", temp);
}
return temp;
}
return temp;
}
答案 0 :(得分:0)
我不确定它是否有帮助,但我将代码简化为它实际正在做的事情。
private string LoadNavigasi(string kodeJabatan)
{
if (kodeJabatan == null)
kodeJabatan = "001";
DataSet ds = RunQuery("Select KodePosition,NamaPosition,Parent from Position where KodePosition = '" + kodeJabatan + "'");
var kode = ds.Tables[0].Rows[0][0].ToString();
var nama = ds.Tables[0].Rows[0][1].ToString();
var parent = ds.Tables[0].Rows[0][2].ToString();
string temp = string.Format("<a href=?Kode={0}&Name={1}>{1}</a>", kode, nama);
if (string.IsNullOrEmpty(parent))
{
string tempP = LoadNavigasi(parent);
temp = string.Format("{1}<ul><li>{0}", temp, tempP);
}
return temp;
}
你在行
中提到了你的第二个参数temp = string.Format("<a href=?Kode=" + kode + "&Name=" + nama + ">{0}</a>", nama);
第二个参数是nama
,但我不明白它有什么问题。