title: Passing List<int> as Query Parameter to SQL Server
body: <p>I have to pass a list to a SQL Server query using C#. My code is here:  </p>
  
  <pre><code>using (SqlDataReader _myReader_2 = _myCommand_3.ExecuteReader())
  {
      _Node_Neighbor.Clear();
          while (_myReader_2.Read())
          {
              _Node_Neighbor.Add(Convert.ToInt32(_myReader_2["Target_Node"]));
          }
  
      _myReader_2.Close();
  
    //Here I have to pass this _Node_Neighbor i.e. of type List&lt;int&gt; to another  
    //SQL Server query as:
  
      try
          {
              SqlCommand _myCommand_4 = _con.CreateCommand();
  
              _myCommand_4.CommandText = @"SELECT COUNT(*) FROM GraphEdges
                                           WHERE Source_Node IN @Source_Node 
                                           AND Target_Node IN @Target_Node";
  
              _myCommand_4.Parameters.AddWithValue("@Source_Node", _Node_Neighbor);
              _myCommand_4.Parameters.AddWithValue("@Target_Node", _Node_Neighbor);
  
              _Mutual_Links = Convert.ToInt32(_myCommand_4.ExecuteScalar());
          }
          catch(Exception e)
          {
              Console.WriteLine(e.Message);
          }
  }  
  </code></pre>
  
  <p>Whereas, to pass a list as a parameter, I think there might be some other way that's why I'm getting this error as:
  <code>No mapping exists from object type Systems.Collections.Generic.List</code></p>
  
  <p>Thanks!</p>