Table of Contents

API reference

The reference lists the public types of DynaSharp, DynaSharp.Testing and DynaSharp.Coordination, with the XML docs of every member. Most code needs two namespaces: DynaSharp for the client, the tables and the commands, and DynaSharp.Mapping for the attributes on your types.

Where to start

Namespaces

Namespace You need it for
DynaSharp Everything a user of a table names: the client and its options, Table<T> and Index<T>, the commands and their results, Item and AttributeValue, Attr, Expr, Condition, SortKeyCondition, PartitionKey<T>, ContinuationToken, and every exception. using static DynaSharp.Expr; brings Attr("name")
DynaSharp.Mapping The attributes that map a type, from [DynamoDbEntity] to [Version], and the interfaces the generator implements
DynaSharp.Serialization Converters: the built-in ones, such as EpochSecondsConverter, and IDynamoDbConverter<T> for a converter of your own
DynaSharp.Requests The request API: a method per DynamoDB operation, its request and response records, and table administration beyond CreateTable()
DynaSharp.Credentials The providers of credentials, for a source other than the default chain
DynaSharp.Streams DynamoDbStreamsClient and its records, the stream of a table, and its changes as entities: Change<T> and MixedChange<...>
DynaSharp.Testing The package DynaSharp.Testing: StubHandler, StubClient and StubResponse for tests without AWS, and FakeDynamoDb, an in-memory DynamoDB
DynaSharp.Coordination The package DynaSharp.Coordination: LockTable, Lease and IsHeld, for locks with fencing tokens and leader election
DynaSharp.Coordination.Testing What a test of the locks does as another process would, and LockState
DynaSharp.Expressions ICondition, for a condition type of your own. The structs that conditions are made of are return types, not written by hand

What is not here

  • Generated members. Keys, Attrs and Indexes are generated into your assembly, so they have no page here: Generated code lists them.
  • Infrastructure. Types and members that exist for generated code, such as KeyWriter, DynamoDbEntityInfo and the structs of conditions, are public but hidden from IntelliSense and from this reference. They change with the package.