Protocol Buffers .NET Runtime Library API Reference

Protocol Buffers .NET Runtime Library API Reference

Protocol Buffers .NET Runtime Library

Google.Protobuf

Classes

ByteStringImmutable array of bytes.
CodedInputStreamReads and decodes protocol message fields.
CodedOutputStreamEncodes and writes protocol message fields.
CodedOutputStream.OutOfSpaceExceptionIndicates that a CodedOutputStream wrapping a flat byte array ran out of space.
FieldCodecFactory methods for FieldCodec{T}.
FieldCodec< T >
InvalidJsonExceptionThrown when an attempt is made to parse invalid JSON, e.g.
InvalidProtocolBufferExceptionThrown when a protocol message being parsed is invalid in some way, e.g.
JsonFormatterReflection-based converter from messages to JSON.
JsonFormatter.SettingsSettings controlling JSON formatting.
JsonParserReflection-based converter from JSON to messages.
JsonParser.SettingsSettings controlling JSON parsing.
MessageExtensionsExtension methods on IMessage and IMessage{T}.
MessageParserA general message parser, typically used by reflection-based code as all the methods return simple IMessage.
MessageParser< T >A parser for a specific message type.
ProtoPreconditionsHelper methods for throwing exceptions when preconditions are not met.
WireFormatThis class is used internally by the Protocol Buffer Library and generated message implementations.

Interfaces

ICustomDiagnosticMessageA message type that has a custom string format for diagnostic purposes.
IDeepCloneable< T >Generic interface for a deeply cloneable type.
IMessageInterface for a Protocol Buffers message, supporting basic operations required for serialization.
IMessage< T >Generic interface for a Protocol Buffers message, where the type parameter is expected to be the same type as the implementation class.

Google.Protobuf.Collections

Classes

MapField< TKey, TValue >Representation of a map field in a Protocol Buffer message.
MapField< TKey, TValue >.CodecA codec for a specific map field.
RepeatedField< T >The contents of a repeated field: essentially, a collection with some extra restrictions (no null values) and capabilities (deep cloning).

Google.Protobuf.Reflection

Classes

DescriptorBaseBase class for nearly all descriptors, providing common functionality.
DescriptorValidationExceptionThrown when building descriptors fails because the source DescriptorProtos are not valid.
EnumDescriptorDescriptor for an enum type in a .proto file.
EnumValueDescriptorDescriptor for a single enum value within an enum in a .proto file.
FieldDescriptorDescriptor for a field or extension within a message in a .proto file.
FileDescriptorDescribes a .proto file, including everything defined within.
GeneratedClrTypeInfoExtra information provided by generated code when initializing a message or file descriptor.
MessageDescriptorDescribes a message type.
MessageDescriptor.FieldCollectionA collection to simplify retrieving the field accessor for a particular field.
MethodDescriptorDescribes a single method in a service.
OneofAccessorReflection access for a oneof, allowing clear and "get case" actions.
OneofDescriptorDescribes a "oneof" field collection in a message type: a set of fields of which at most one can be set in any particular message.
OriginalNameAttributeSpecifies the original name (in the .proto file) of a named element, such as an enum value.
ServiceDescriptorDescribes a service type.
TypeRegistryAn immutable registry of types which can be looked up by their full name.

Interfaces

IDescriptorInterface implemented by all descriptor types.
IFieldAccessorAllows fields to be reflectively accessed.

Google.Protobuf.WellKnownTypes

Classes

AnyAny contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.
AnyReflectionHolder for reflection information generated from google/protobuf/any.proto
ApiApi is a light-weight descriptor for a protocol buffer service.
ApiReflectionHolder for reflection information generated from google/protobuf/api.proto
BoolValueWrapper message for bool.
BytesValueWrapper message for bytes.
DoubleValueWrapper message for double.
DurationA Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution.
DurationReflectionHolder for reflection information generated from google/protobuf/duration.proto
EmptyA generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs.
EmptyReflectionHolder for reflection information generated from google/protobuf/empty.proto
EnumEnum type definition.
EnumValueEnum value definition.
FieldA single field of a message type.
Field.TypesContainer for nested types declared in the Field message type.
FieldMaskFieldMask represents a set of symbolic field paths, for example:
FieldMaskReflectionHolder for reflection information generated from google/protobuf/field_mask.proto
FloatValueWrapper message for float.
Int32ValueWrapper message for int32.
Int64ValueWrapper message for int64.
ListValueListValue is a wrapper around a repeated field of values.
MethodMethod represents a method of an api.
MixinDeclares an API to be included in this API.
OptionA protocol buffer option, which can be attached to a message, field, enumeration, etc.
SourceContextSourceContext represents information about the source of a protobuf element, like the file in which it is defined.
SourceContextReflectionHolder for reflection information generated from google/protobuf/source_context.proto
StringValueWrapper message for string.
StructStruct represents a structured data value, consisting of fields which map to dynamically typed values.
StructReflectionHolder for reflection information generated from google/protobuf/struct.proto
TimeExtensionsExtension methods on BCL time-related types, converting to protobuf types.
TimestampA Timestamp represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time.
TimestampReflectionHolder for reflection information generated from google/protobuf/timestamp.proto
TypeA protocol buffer message type.
TypeReflectionHolder for reflection information generated from google/protobuf/type.proto
UInt32ValueWrapper message for uint32.
UInt64ValueWrapper message for uint64.
ValueValue represents a dynamically typed value which can be either null, a number, a string, a boolean, a recursive struct value, or a list of values.
WrappersReflectionHolder for reflection information generated from google/protobuf/wrappers.proto