The signature for a C# PER encode method is as follows:
public override void Encode (Asn1PerEncodeBuffer buffer)
The buffer argument is a reference of an Asn1PerEncodeBuffer object that describes the buffer into which a message is to be encoded. This must be created and initialized before calling any encode method. See the description of this class in the C# Run-Time Classes section for details on how this class is used.
The PER encode methods do not return a value. This is different than the C/C++ version that returns a negative status value to indicate an encoding failure. For C#, errors are reported via the exception mechanism. All ASN1C C# exceptions are derived from the Asn1Exception base class. See the section on exceptions for a complete list and description of the various exceptions that can be thrown.