When calling "return local_DataTable", is there a
copy of this instance created or is a pointer of
it given back ?
(...)
public System.Data.DataTable GetDataTable(string Query) //...
System.Data.DataTable is a class. Therefore a reference (=pointer) is returned. The object itself is on the heap.
(If it wouldn't be a class, but a [unboxed] struct, then a copy would be returned.)