帮忙简化下
public static DataTable GetTable(OLTableName TabName, string strColumn, string strCondition)
{
SqlParameter[] sqlParams = null;
int columnLength = strColumn.Length;
int conditionLength = strCondition.Length;
if (columnLength > 0 && conditionLength > 0)
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128),
new SqlParameter("@ColumnName", SqlDbType.NVarChar, 128),
new SqlParameter("@Condition", SqlDbType.NVarChar, 200)};
sqlParams[0].Value = TabName;
sqlParams[1].Value = strColumn;
sqlParams[2].Value = strCondition; }
else if (columnLength == 0 && conditionLength == 0)
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128) };
sqlParams[0].Value = TabName;
}
else if (columnLength == 0)
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128),
new SqlParameter("@Condition", SqlDbType.NVarChar, 200)};
sqlParams[0].Value = TabName;
sqlParams[1].Value = strCondition;
} else
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128),
new SqlParameter("@ColumnName", SqlDbType.NVarChar, 200)};
sqlParams[0].Value = TabName;
sqlParams[1].Value = strColumn;
}
return Function.ExecuteProcedureTable("P_S_Table", sqlParams);
}
public static DataTable GetTable(OLTableName TabName, string strColumn, string strCondition)
{
SqlParameter[] sqlParams = null;
int columnLength = strColumn.Length;
int conditionLength = strCondition.Length;
if (columnLength > 0 && conditionLength > 0)
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128),
new SqlParameter("@ColumnName", SqlDbType.NVarChar, 128),
new SqlParameter("@Condition", SqlDbType.NVarChar, 200)};
sqlParams[0].Value = TabName;
sqlParams[1].Value = strColumn;
sqlParams[2].Value = strCondition; }
else if (columnLength == 0 && conditionLength == 0)
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128) };
sqlParams[0].Value = TabName;
}
else if (columnLength == 0)
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128),
new SqlParameter("@Condition", SqlDbType.NVarChar, 200)};
sqlParams[0].Value = TabName;
sqlParams[1].Value = strCondition;
} else
{
sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128),
new SqlParameter("@ColumnName", SqlDbType.NVarChar, 200)};
sqlParams[0].Value = TabName;
sqlParams[1].Value = strColumn;
}
return Function.ExecuteProcedureTable("P_S_Table", sqlParams);
}
这个,你可以 不用 数组的方式, sqlParams = new SqlParameter[] { new SqlParameter("@TabName", SqlDbType.NVarChar, 128),
把 重复的 写在 最外面,不重复的 再写在 里面。即使优化了,也提高不了效率的。