public IEnumerable<KeyValuePair<string, RetrievedDataSet>> RetrieveImages(string studyInstanceUID,string seriesInstanceUID)
Public Function RetrieveImages( _ByVal studyInstanceUID As String, _ByVal seriesInstanceUID As String _) As IEnumerable(Of KeyValuePair(Of String,RetrievedDataSet))
public:IEnumerable<KeyValuePair<String^,RetrievedDataSet^>>^ RetrieveImages(String^ studyInstanceUID,String^ seriesInstanceUID)
studyInstanceUID
The Study Instance UID System.String value against which to match the retrieved datasets. This can be null or System.String.Empty.
seriesInstanceUID
The Series Instance UID System.String value against which to match the retrieved datasets. This can be null or System.String.Empty.
An System.Collections.IEnumerable of a KeyValuePair Enumerator which holds the DICOM instance SOP Instance UID as its key and a RetrievedDataSet as its value.
The InstanceReceived event will be fired when each instance is received.
Calling this method while the Processing property is true results in an InvalidOperationException being thrown.
If the operation is cancelled this method throws a ClientCommunicationCanceled exception.
using LeadtoolsExamples.Common;using Leadtools;using Leadtools.Codecs;using Leadtools.Dicom;using Leadtools.Dicom.Scu.Common;using Leadtools.ImageProcessing;using Leadtools.Dicom.AddIn.Common;using Leadtools.Dicom.Scu;using Leadtools.Medical.Workstation.Client;using Leadtools.Medical.Workstation.Client.Local;using Leadtools.Medical.Workstation.Client.Pacs;using Leadtools.Medical.Storage.DataAccessLayer;using Leadtools.Medical.DataAccessLayer;using Leadtools.Medical.Storage.DataAccessLayer.Configuration;public void RetrieveLocalDatabase(){Leadtools.Examples.Support.SetLicense();AeInfo clientInfo = new AeInfo();clientInfo.Address = Dns.GetHostName(); //local machineclientInfo.AETitle = "TEST_CLIENT";clientInfo.Port = 1000;IStorageDataAccessAgent dataAccess = null;bool fromConfiguration = false;if (fromConfiguration){//Make sure that the Sotrage Data Access is configured before creating an instance.dataAccess = DataAccessFactory.GetInstance(new StorageDataAccessConfigurationView()).CreateDataAccessAgent<IStorageDataAccessAgent>();}else{string connectionString = @"Data Source=local;Initial Catalog=DicomStorage;Integrated Security=True;User ID=;Password=;Pooling=True";//or you can directly create the data access object which works with your databasedataAccess = new StorageSqlDbDataAccessAgent(connectionString);}DbRetrieveClient client = new DbRetrieveClient(clientInfo, dataAccess);client.InstanceMoved += new EventHandler<InstanceMovedEventArgs>(client_InstanceMoved);client.EnableLog = true;client.LogFileName = Path.Combine(LEAD_VARS.ImagesDir, "DicomLog.txt");client.LoadDataSetOnRetrieve = false;//Enable this if you need to read information from the DICOM dataset.PerformClientRetrieve(client);}void client_InstanceMoved(object sender, InstanceMovedEventArgs e){Console.WriteLine("Number of moved images: {0}", e.Completed);}public void PerformClientRetrieve(RetrieveClient client){IEnumerable<KeyValuePair<string, RetrievedDataSet>> images = client.RetrieveImages("", ""); //perform a wild card searchforeach (KeyValuePair<string, RetrievedDataSet> imageInformation in images){Console.WriteLine("SOPInstanceUID: {0}", imageInformation.Key);Console.WriteLine(imageInformation.Value.DataSetFilePath);Console.WriteLine("---------------------------------------------");}}static class LEAD_VARS{public const string ImagesDir = @"C:\LEADTOOLS21\Resources\Images";}
Imports LeadtoolsExamples.CommonImports LeadtoolsImports Leadtools.ExamplesImports Leadtools.CodecsImports Leadtools.DicomImports Leadtools.Dicom.Scu.CommonImports Leadtools.ImageProcessingImports Leadtools.Dicom.AddIn.CommonImports Leadtools.Dicom.ScuImports Leadtools.Medical.DataAccessLayerImports Leadtools.Medical.Storage.DataAccessLayerImports Leadtools.Medical.Storage.DataAccessLayer.ConfigurationImports Leadtools.Medical.Workstation.ClientImports Leadtools.Medical.Workstation.Client.LocalImports Leadtools.Medical.Workstation.Client.PacsPublic Sub RetrieveLocalDatabase()Leadtools.Examples.Support.SetLicense()Dim clientInfo As AeInfo = New AeInfo()clientInfo.Address = Dns.GetHostName() 'local machineclientInfo.AETitle = "TEST_CLIENT"clientInfo.Port = 1000Dim dataAccess As Medical.Storage.DataAccessLayer.IStorageDataAccessAgentDim fromConfiguration As BooleanfromConfiguration = FalseIf (fromConfiguration) Then'Make sure that the Sotrage Data Access is configured before creating an instance.dataAccess = DataAccessFactory.GetInstance(New StorageDataAccessConfigurationView()).CreateDataAccessAgent(Of IStorageDataAccessAgent)()ElseDim connectionString As String = "Data Source=local;Initial Catalog=DicomStorage;Integrated Security=True;User ID=;Password=;Pooling=True"'or you can directly create the data access object which works with your databasedataAccess = New StorageSqlDbDataAccessAgent(connectionString)End If'Make sure that the MoveAddIn is configured properly before using this class.Dim client As DbRetrieveClient = New DbRetrieveClient(clientInfo, dataAccess)client.LoadDataSetOnRetrieve = False 'Enable this if you need to read information from the DICOM dataset.AddHandler client.InstanceMoved, AddressOf client_InstanceMovedclient.EnableLog = Trueclient.LogFileName = Path.Combine(LEAD_VARS.ImagesDir, "DicomLog.txt")PerformClientRetrieve(client)End SubSub client_InstanceMoved(ByVal sender As Object, ByVal e As InstanceMovedEventArgs)Console.WriteLine("Number of moved images: {0}", e.Completed)End SubPublic Sub PerformClientRetrieve(ByVal client As RetrieveClient)Dim images As IEnumerable(Of KeyValuePair(Of String, RetrievedDataSet))images = client.RetrieveImages("", "") 'perform a wild card searchFor Each imageInformation As KeyValuePair(Of String, RetrievedDataSet) In imagesConsole.WriteLine("SOPInstanceUID: {0}", imageInformation.Key)Console.WriteLine(imageInformation.Value.DataSetFilePath)Console.WriteLine("---------------------------------------------")Next imageInformationEnd SubPublic NotInheritable Class LEAD_VARSPublic Const ImagesDir As String = "C:\LEADTOOLS21\Resources\Images"End Class
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document
