---
title: "Class StateSerializer | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Serialization.Json/StateSerializer/"
---

# Class StateSerializer

> **Inheritance:** `System.Object` -> StateSerializer

###### **Namespace**: [Aurigma.DesignAtoms.Serialization.Json](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Serialization.Json.md)

###### **Assembly**: Aurigma.DesignAtoms.dll

```csharp title="Syntax"
public class StateSerializer
```

## Inherited Members

* `System.Object.ToString`
* `System.Object.Equals(System.Object)`
* `System.Object.Equals(System.Object,System.Object)`
* `System.Object.ReferenceEquals(System.Object,System.Object)`
* `System.Object.GetHashCode`
* `System.Object.GetType`
* `System.Object.MemberwiseClone`

## Constructors

### StateSerializer

```csharp
public StateSerializer(ProductJsonConverter productConverter, JsonColorConverter colorConverter, BaseStateDataConverter baseStateDataConverter)
```

## Methods

### Serialize

```csharp
public void Serialize(State state, Stream toStream)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.State](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/State.md) | *state* |  |
| `System.IO.Stream` | *toStream* |  |

### Serialize

```csharp
public string Serialize(State state)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| [Aurigma.DesignAtoms.Model.State](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.Model/State.md) | *state* |  |

##### Returns

`System.String`

### Deserialize&lt;TState&gt;

```csharp
public TState Deserialize<TState>(string data)
    where TState : State
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.String` | *data* |  |

##### Returns

`<TState>`

### Deserialize&lt;TState&gt;

```csharp
public TState Deserialize<TState>(Stream data)
    where TState : State
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `System.IO.Stream` | *data* |  |

##### Returns

`<TState>`
