using DicomObjects;
using DicomObjects.DicomUIDs;
using DicomObjects.Enums;
using (var cn = new DicomAssociation()) {
string privateSopClassUID = "1.2.840.113619.6.1.4.50.1002";
// Add the SOP Class UID(s) that you expect to receive to the Presentation Contexts
cn.RequestedContexts.Add(SOPClasses.StudyRootQR_GET);
cn.RequestedContexts.Add(privateSopClassUID);
cn.Open("localhost", 104, "callingAET", "calledAET");
var request = new DicomDataSet();
request.PatientID = "222.22.2222";
request.StudyUID = "999.999.2.19941105.112000";
request.SeriesUID = "1.2.826.0.1.3680043.4.1.19990124221049.3";
request.InstanceUID = "1.2.826.0.1.3680043.4.1.19990124230602.1";
request.Add(Keyword.QueryRetrieveLevel, "INSTANCE"); // Image/Instance level C-GET
cn.Get(privateSopClassUID, request); // send C-GET request
// all images retrieved can be found here
DicomDataSetCollection instances = cn.ReturnedInstances;
cn.Close();
}