ОБНОВЛЕНИЕ 1:
В этой строке выдается исключение:
client_group_details.Add(new ClientGroupDetails(
ОРИГИНАЛЬНЫЙ ВОПРОС:
У меня есть следующий код, который я сократил с 30 столбцов данных из базы данных до 2 столбцов из базы данных. Я получаю сообщение об ошибке, когда любой из столбцов возвращает значение NULL:
public class ClientGroupDetails
{
public String Col2;
public String Col3;
public ClientGroupDetails(String m_Col2, String m_Col3)
{
Col2 = m_Col2;
Col3 = m_Col3;
}
public ClientGroupDetails() { }
}
[WebMethod()]
public List<ClientGroupDetails> GetClientGroupDetails(string phrase)
{
var client_group_details = new List<ClientGroupDetails>();
using (connection = new SqlConnection(ConfigurationManager.AppSettings["connString"]))
{
using (command = new SqlCommand(@"select col2, col3 where col1 = @phrase", connection))
{
command.Parameters.Add("@phrase", SqlDbType.VarChar, 255).Value = phrase;
connection.Open();
using (reader = command.ExecuteReader())
{
int Col2Index = reader.GetOrdinal("col2");
int Col3Index = reader.GetOrdinal("col3");
while (reader.Read())
{
client_group_details.Add(new ClientGroupDetails(
reader.GetString(Col2Index),
reader.GetString(Col3Index)));
}
}
}
}
return client_group_details;
}
Я получаю ошибку:
Данные равны нулю. Этот метод или свойство нельзя вызывать для значений Null.
Я не уверен, что здесь делать, чтобы иметь дело со значениями NULL, поскольку приведенный выше код является урезанной версией.
Кто-нибудь знает, как решить эту проблему?