# ZooKeeperBasedMembershipTable.ReadRowAsync(SiloAddress, CancellationToken)

[Type overview](/orleans/docs/api/csharp/microsoft.orleans.clustering.zookeeper/orleans.runtime.membership.zookeeperbasedmembershiptable/) | [Methods](/orleans/docs/api/csharp/microsoft.orleans.clustering.zookeeper/orleans.runtime.membership.zookeeperbasedmembershiptable/methods/)

[Source](https://github.com/dotnet/orleans/blob/8bc9fd244427351ad24ccc039a9e7642a42c1cc4/src/Orleans.Clustering.ZooKeeper/ZooKeeperBasedMembershipTable.cs#L160)

```csharp
public Task<MembershipTableData> ReadRowAsync(SiloAddress siloAddress, CancellationToken cancellationToken = default(CancellationToken))
```

Atomically reads the Membership Table information about a given silo. The returned MembershipTableData includes one MembershipEntry entry for a given silo and the TableVersion for this table. The MembershipEntry and the TableVersion have to be read atomically.

### Parameters

- `siloAddress` (`SiloAddress`): The address of the silo to read.
- `cancellationToken` (`CancellationToken`): A token which cancels the operation.

### Returns

The membership information for a given silo: MembershipTableData consisting one MembershipEntry entry and TableVersion, read atomically.
