So, yeah...its that error. Given the code, I don't know what I'm missing or not doing to make it work:
RegionQuery(allPointsDbscan, p.ClusterPoint, epsilon, deltaX, deltaY, out neighborPts);
if (neighborPts != null)
{
  if (neighborPts.Length < minPts)
      p.ClusterId = (int)ClusterIds.Noise;
  else
  {
      clusterId++;
      ExpandCluster(allPointsDbscan, p, neighborPts, clusterId, epsilon, minPts, deltaX, deltaX);
  }
}
private void RegionQuery(DbscanPoint[] allPoints, DatasetItem point, double epsilon, double delta_X, double delta_Y, out DbscanPoint[] neighborPts)
{
   if (delta_X < 0.1499 && delta_Y < 0.0899)
   {
       neighborPts = allPoints.Where(x => _metricFunc(point, x.ClusterPoint) <= epsilon).ToArray(); 
   }
   else
       neighborPts = null;
}
I don't understand why its throwing me that exception, because I check to see if neighborPts is NULL or not before I do anything with it; but it appears that I can't even do that. Why is this?
 
    