ActiveConnection connection = Library.GetInstance().CurrentLibrary;
// There can be more parts with the same part number (for example: more variants of the same part).
IEnumerable<BaseLibraryPart> parts = connection.GetLibraryPartsByPartNumber("part number");
// Get parts specified by part number and version (still can contain more than one element, because of more possible variants).
IEnumerable<BaseLibraryPart> parts2 = connection.GetLibraryPartsByPartNumber("part number", version: "1.0");
// Get unique part specified by part number, version and variant (still returned as array of one part).
IEnumerable<BaseLibraryPart> parts3 = connection.GetLibraryPartsByPartNumber("part number", "2.1", "3");
// Will be empty because of wrong version format.
IEnumerable<BaseLibraryPart> parts4 = connection.GetLibraryPartsByPartNumber("part number", "2.", "3");