У меня есть две существующие функции. Один я не могу редактировать (getServiceNames), а во второй мне нужно установить строку (getDataTableOne). Я хочу установить эту строку с функцией в том же классе (getAllExceptNiServiceNames), но он дает мне эту ошибку, потому что моя функция, которую я хотел бы изменить, является статической.Требуется ссылка на объект нестатического поля, метода или ошибки свойства
Ссылка на объекте требуется нестатическое поле, метод или свойство «Queries.getAllExceptNiServiceNames()»
Я не могу удалить статическое свойство функции и я также могу» t создать строковый объект. Каков наилучший способ исправить это?
public static DataSet getDataTableOne()
{
string serviceNameFilterLineThree = getAllExceptNiServiceNames(); //ERROR
}
public static DataSet getServiceNames()
{
DataSet ds = new DataSet();
string query_select = "select test";
ds = QualityGate.fillDataset(query_select);
return ds;
}
public string getAllExceptNiServiceNames()
{
string sql = "";
DataSet ds = getServiceNames();
int i = 0;
foreach (DataRow theRow in ds.Tables[0].Rows)
{
if (i != 0)
sql += "AND ";
sql += "serviceName = '" + theRow["serviceName"].ToString() + "' ";
i++;
}
return sql;
}
@ Dan: Я согласен, что метод должен быть статичным, но ваш код, который вы включили, не имеет ключевого слова 'static'! –
Спасибо, что работает, если я только сделал функцию static, и этого было достаточно. – Freddy