EntityCollection
Declaration
public class Strawberry.Core.EntityCollection
Represents a strongly-typed collection of Entity objects, accessible by their string keys. Wraps a dictionary and implements both mutable and read-only dictionary interfaces.
Implements: System.Collections.IDictionary, System.Collections.Generic.IDictionary, System.Collections.Generic.IReadOnlyDictionary
Constructors
EntityCollection
Initializes a new instance of the EntityCollection class.
void EntityCollection()
Properties
this[]
Gets or sets the Entity with the specified key. Returns null if the key is not found when getting.
Entity this[string key] { get set }
Count
Gets the number of entities contained in the collection.
int Count { get }
IsFixedSize
Gets a value indicating whether the IDictionary object has a fixed size.
bool IsFixedSize { get }
IsReadOnly
Gets a value indicating whether the IDictionary object is read-only.
bool IsReadOnly { get }
IsSynchronized
Gets a value indicating whether access to the ICollection is synchronized (thread safe).
bool IsSynchronized { get }
Values
Gets a list containing all the entities in the collection. Note: This creates a new list allocation each time it is accessed.
IList<Entity> Values { get }
Keys
Gets a list containing all the keys in the collection. Note: This creates a new list allocation each time it is accessed.
IList<string> Keys { get }
Methods
Add
Adds an entity with the specified key to the collection.
void Add(string key, Entity value)
Parameters:
| Name | Type | Description |
|---|---|---|
key |
System.String |
The key of the entity to add. |
value |
Strawberry.Core.Entity |
The entity to add. |
Clear
Removes all entities from the collection.
void Clear()
ContainsKey
Determines whether the collection contains an entity with the specified key.
bool ContainsKey(string key)
Parameters:
| Name | Type | Description |
|---|---|---|
key |
System.String |
The key to locate in the collection. |
Returns: true if the collection contains an entity with the key; otherwise, false.
Remove
Removes the entity with the specified key from the collection.
bool Remove(string key)
Parameters:
| Name | Type | Description |
|---|---|---|
key |
System.String |
The key of the entity to remove. |
Returns: true if the entity is successfully removed; otherwise, false.
TryGetValue
Gets the entity associated with the specified key.
bool TryGetValue(string key, out Entity value)
Parameters:
| Name | Type | Description |
|---|---|---|
key |
System.String |
The key of the entity to get. |
value |
out Strawberry.Core.Entity |
When this method returns, contains the entity associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. |
Returns: true if the collection contains an entity with the specified key; otherwise, false.
ChangeKey
Changes the key associated with an existing entity in the collection. This also updates the entity's ID property to match the new key.
void ChangeKey(string oldKey, string newKey)
Parameters:
| Name | Type | Description |
|---|---|---|
oldKey |
System.String |
The current key of the entity. |
newKey |
System.String |
The new key to assign to the entity. |