

Avviso di fine del supporto: il 20 maggio 2026, AWS terminerà il supporto per AWS SimSpace Weaver. Dopo il 20 maggio 2026, non potrai più accedere alla SimSpace Weaver console o SimSpace Weaver alle risorse. Per ulteriori informazioni, consulta [AWS SimSpace Weaver Fine del supporto](https://docs.aws.amazon.com/simspaceweaver/latest/userguide/simspaceweaver-end-of-support.html). 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Memorizza i dati del campo di un'entità
<a name="working-with_app-sdk_ent_readwrite_store"></a>

Gli esempi seguenti mostrano come è possibile archiviare (scrivere nello State Fabric) i dati del campo di un'entità di proprietà dell'app. Questi esempi utilizzano la seguente funzione:

```
AWS_WEAVERRUNTIME_API Result<void> StoreEntityField(
    Transaction& txn,
    const Entity& entity,
    TypeId keyTypeId,
    FieldIndex index,
    std::int8_t* src,
    std::size_t length) noexcept;
```

Il `Api::TypeId keyTypeId` parametro rappresenta il tipo di dati dei dati trasmessi.

Il `Api::TypeId keyTypeId` parametro deve ricevere il modulo corrispondente `Api::TypeId``Api::BuiltinTypeId`. Se non esiste una conversione appropriata, puoi usare`Api::BuiltinTypeId::Dynamic`.

Per tipi di dati complessi, usa`Api::BuiltInTypeId::Dynamic`.

**Nota**  
Il valore di `FieldIndex index` deve essere maggiore di 0. Il valore 0 è riservato alla chiave dell'indice (vedi`StoreEntityIndexKey()`).

**Example Esempio di utilizzo di tipi di dati primitivi**  

```
namespace
{
    constexpr Api::FieldIndex k_isTrueFieldId { /* value */ 1 };
}

Result<void> SetEntityFields(
    Api::Entity& entity, 
    Transaction& transaction)
{
    bool value = true;
    
    auto* src = reinterpret_cast<std::int8_t*>(value);
    size_t length = sizeof(*value);
    
    WEAVERRUNTIME_TRY(Api::StoreEntityField(
        transaction,
        entity,
        Api::BuiltinTypeIdToTypeId(
            Aws::WeaverRuntime::Api::BuiltinTypeId::Bool),
        k_isTrueFieldId,
        src,
        length));
}
```

**Example Esempio di utilizzo di un struct per contenere i dati**  

```
namespace
{
    constexpr Api::FieldIndex k_dataFieldId { /* value */ 1 };
}

struct Data
{
    bool boolData;
    float floatData;
};

Result<void> SetEntityFields(
    Api::Entity& entity, 
    Transaction& transaction)
{
    Data data = { /* boolData */ false, /* floatData */ -25.93 };
    
    auto* src = reinterpret_cast<std::int8_t*>(data);
    size_t length = sizeof(*data);
    
    WEAVERRUNTIME_TRY(Api::StoreEntityField(
        transaction,
        entity,
        Api::BuiltinTypeIdToTypeId(
            Aws::WeaverRuntime::Api::BuiltinTypeId::Dynamic),
        k_dataFieldId,
        src,
        length));
}
```