|
OSS ASN.1 Tools for C#
Enhancements
|
|
 |
Version 2.2
The OSS ASN.1 compiler for C# now supports a new command line option,
-namesForVB/-noNamesForVB, to enable/disable the generation
of names for C# properties and methods suitable for use in a Visual Basic
.NET applications. The default behavior of the ASN.1 compiler, for reasons
of backward compatibility, is to generate names that differ in case.
We recommend that Visual Basic developers use the new option to avoid case related problems.
The runtime
Asn1Exception can now become a Serializable object.
Version 2.1
OSS ASN.1 Tools for
C# version 2.1 supports the full range of time types as
specified in ISO 8601 (
TIME, DATE, TIME-OF-DAY,
DATE-TIME, DURATION). These representations of date and
time were standardized to avoid misinterpretations across
national boundaries. New runtime types
Asn1TimeType (TIME),
Asn1DateType
(DATE),
Asn1DateTimeType (DATE-TIME),
Asn1DurationType (DURATION) and
Asn1TimeOfDayType (TIME-OF-DAY) are available to
support these new time types.
A new command line option, -partialClasses, causes the compiler to generate C# partial classes for types,
objects, object classes, objects sets, and classes containing module
values. The generated partial classes are dedicated to the Microsoft
.NET Framework 2.0. They permit a class definition to be split over
two or more source files for easier maintenance and development.
A new command line option, -useXmlNames, instructs the compiler to generate additional classes for
typereferences, different names for type properties and additional
names for named identifier constants. The names of these extra classes,
properties and constants match the names used in the Extended XER
encoding of classes and class members. The ASN.1 Compiler derives the
names for such components from the E-XER NAME or TEXT encoding
instructions.
Runtime methods ToString() now
provide the representation of the instance value using ASN.1
value notation. Note that alternatively the
Asn1TypeExplorer class, which allows access to
more information , such as the reference type name of each
component of a constructed type, is still available.
The runtime method Decode()
has been added to the IDecoder interface. Previously it existed on all
decoders but was not visible through the interface.
Generic methods are now available for
Asn1ConstructedType (SEQUENCE, SET, CHOICE) and
Asn1ConstructedOfType (SEQUENCE OF, SET OF) to
allow the manipulation of internal components of constructed
types without knowing the exact type of these components.
The runtime method Validate() now throws Asn1ValidationException (which
extends Asn1Exception) for clearer exception handling when using
validating encoders or decoders.
Version 2.0
Extended
XML Encoding Rules (E-XER) support has been added to the
OSS ASN.1 Tools for C#. Now you can have the full capabilities
of XML with ASN.1. Extended-XER encoding makes ASN.1 an XML
schema notation as powerful as XSD, with the simplicity of
ASN.1.
A new compiler option, -lineSeparator, allows
you to specify a line separator escape sequence of your choice
(e.g., to create DOS-type line formatting) for XER or E-XER
encodings.
A new command line option,
-asn1ModuleNamespace, allows you to define a
namespace for an ASN.1 module. When used in conjunction with
another new option, -noModule, a shared module
(ie., a module that has multiple modules importing from it)
can be used independently as a common C# DLL by each
protocol's generated API.
New methods, GetAsn1TypeElements() and
AddAsn1Type(), allow you to get a list of elements and to add an element for easier
handling of SEQUENCE OF/SET OF types.
Version 1.3
A new compiler option, -verbose/-noverbose,
controls whether detailed compile-time status messages
are displayed. Specifying -verbose will
result in the display of details such as the name of
the input file currently being read, the contents of
the license file in use, etc.
A new runtime property, sortingSetOf, has
been added to the XER encoders to control the sorting
of SET OF components.
.:. Top
Copyright © 2006 OSS Nokalva, Inc. All Rights Reserved.