Table of Contents

Enum VersionMissing

Namespace
DynaSharp.Mapping
Assembly
DynaSharp.dll

What an item without a version attribute means to an entity with a VersionAttribute, which Missing says.

public enum VersionMissing

Fields

Reject = 0

Version 0 stands for no item at all, so every 0 renders attribute_not_exists on the partition key, and a write at 0 fails on any item under the key, also on one without a version. For a table this library alone writes.

Allow = 1

Version 0 stands for what reads as 0: an item without a version, one that holds 0, which is what the first SaveAsync of the AWS SDK stores, or no item at all. So every 0 renders (attribute_not_exists(version) OR version = 0). For a table that keeps items other code wrote: a first write replaces such an item and gives it version 1. A write at 0 therefore no longer proves that the key was free, and .IfNotExists() is how to ask for that.

Select of the version gives 0 for an item without the attribute. That is about an item that exists. A read that found no item has Found false, and Value throws InvalidOperationException, so test Found first.