ReSharper meldet mir eine Possible NullReferenceException bei queryParams.GetValues(key)[0], doch ich bekomme den Code nicht so geschrieben das diese verschwindet.
internal int CreateMiddleStatementPart(ref StringBuilder sb, NameValueCollection queryParams)
{
string[] keyCollection = queryParams.AllKeys;
string clause = " WHERE ";
int noStatements = queryParams.Count;
if (noStatements == 0)
{
sb.Append(clause);
}
else
{
int listcount = 0;
foreach (string key in keyCollection)
{
listcount = ++listcount;
sb.Append(clause);
if (queryParams != null && queryParams.GetValues(key) != null && key != null)
{
object queryValue = queryParams.GetValues(key)[0]; // <---------- Hier meckert der ReSharper!
if (queryValue is string)
{
queryValue = string.Format(" '{0}' ", queryValue);
}
sb.Append(string.Format("{0} = {1}", key, queryValue));
clause = listcount != keyCollection.Length ? " AND " : " ";
}
}
}
return noStatements;
}
Hat jemand von euch eine Idee wie ich den Code so umschreibe das es passt?
Vielen Dank
dragi