Releases: ClayLipscomb/Odapter
Releases · ClayLipscomb/Odapter
2.01
- Add C# Version Generated option for "9.0 (.NET 5.0)"
- Add DTO Category field for Record, Object, Table and View to customize generated interface
- For C# 9.0, add "immutable record" as a DTO Category option
- Generate commented out interface for all respective ignored package records
- Remove deprecated functionality to generate concrete DTO class for package record
- Generate interfaces instead of concrete DTO classes for objects, tables, and views
- Remove generation of base entity classes
- Remove obsolete methods from deployed CaseConversion.cs
- Implement translation of object type column on a table/view
- Implement translation of object type attribute on an object
- Display Oracle database version during generation
- Add disabled Generated File field for Record
2.0
- Fix auto-generated timestamp so that it changes on each code generation run instead of each exe build
- Prevent duplicate method signatures due to different Oracle types translating to same C# type
- Move all optional Oracle parameters past required Oracle parameters when generating C# method signature
- Remove C# 3.0 option for code generation
- Implement translation of TIMESTAMP WITH TZ, TIMESTAMP WITH LTZ
- Implement ignore of table, view, object entities using same logic as record type
- Implement ignore of ANYDATA, ANYDATASET, ANYTYPE types
- Set IsIgnoredAsParameter, IsIgnoredAsAttribute to true for REAL (previously missed)
- Improve ignore functionality for object and nested table types
- Improve handling of translated naming conflicts caused by non-standard snake_case underscores
- Handle case when XMLTYPE object attribute is NULL in SYS.all_type_attrs
- Move generator .NET framework target from 4.0 to 4.6.2
- Do not set OracleParameter.ArrayBindSize (unnecessary) for assoc array IN arguments
- Limit max size of assoc array to 65535
- Set default max size of assoc array to 65535
- Do not persist UI Client Home value to config
- Mark unused methods in deployed CaseConverter.cs as obsolete and private
- Translate C# keyword by prefixing "@" instead of appending "Cs"; only prefix if translated name is case-sensitive match to keyword
- Limit Max Length of VARCHAR2 Returned Arg to 32767 in UI
- Handle ignore of ref cursor of table %ROWTYPE
- Circumscribe OracleParameter.ParameterName value with double quotes if it is not all upper case
- Prefix respective protected field with "this." in non auto-implemented property setter
- Prefix generic type parameters with "Type" instead of "T_"
- Prevent duplicate record/interface within adapter class due to reference to another package
- Allow custom naming for generated files and persist in config file
- Allow custom namespaces for base adapter/DTO and persist in config file
- Change default suffix for object generated file name from "ObjectType" to "Object"
- Enable Record DTOs? check box to make generation optional
- Automatically select current output path when selection dialog is opened
- Convert absolute path selected in path dialog to relative path for storing in config file
1.06
- Add SYS.all_objects.owner to arguments result set and join to SYS.all_arguments.owner in C# after retrieve to avoid perf hit
- Refine generated comments for code ignored in translation
- Handle ignore of a record with an associative array field
- Handle ignore of an associative array of record
- For perf, exclude filter predicate from arguments retrieve when filter is empty
- Fix handling of Oracle entity (record) and attribute (field) with identical name
1.05
- Change nested record type classes to be abstract
- Remove object namespace from C# param/attribute type
- Tweak generated reason comments for ignored Oracle types
- Implement translation of Oracle NUMERIC, DECIMAL, REAL types
- Handle record type used by external package but not its container package
- Round decimal to 28 instead of 29 during read of result set in generated code
- Round decimal to 28 instead of 29 during read of result set in OrclPower.cs
- Change internal type of Max Size of Associative Array Return/Arg from C# short to int
- Change default Max Size of Associative Array Return/Arg from 1,000 to 50,000
- Add Odapter version in generated code header comment
- Handle ignore of associative array of table row
- Remove getter from generated record type interface
- Major refactor of Oracle to C# type translation code
1.04
- Make each package adapter class sealed and its private instance readonly.
- Adjust header comment in generated base adapter
- Add customizable REF CURSOR translation to ICollection, IList, List
- Add tests for Oracle NATURAL, NATURALN, POSITIVE, POSITIVEN
- Fix handling of permitted special chars in package names
- Add customizable assoc array translation to IList, List
- Add option to save password in settings file
1.03
- Rename map position attribute to HydratorMapAttribute and restrict to property
- Various refactoring
- Upgrade to Costura.Fody 3.1.4 and Fody 3.2.9
- Change Odapter project to class library and build as OdapterCore.dll
- Move FormMain, Odapter.cs to new OdapterWnFrm project and build as Odapter.exe
- For CLOB/NCLOB set OracleParameter size to Int32.MaxValue
- Change default "Max Len for VARCHAR2 Return/Arg" to 32767
- Avoid naming conflict for duplicate signature proc overloads; create test method
- Add test configuration for 3.0 safe types
- Add test code for underscore suffixed names, NOCOPY, and exception raise
Initial Release
v1.0 1.02 update
1.02
- Implement BLOB, CLOB and NCLOB with ODP.NET safe type option
- Detect associative array params with unsupported data types and comment out method
1.01
- Create separate Example project
- Option to add filter value to namespace and file name
- Catch and display failure to parse TNSNAMES file
- When parsing TNSNAMES instances, use = instead of space as delimiter