Namespace: Semata.DataStore.ObjectModel
A wrapper for Associations of a particular Association Type.
public class Association<I> : Association where I : ItemObject
Inherits: Association
Constructors
Name | Description |
Association(ItemObject, string, string, string) |
Construct a new instance of Association. |
Events
Name | Description |
AssocationsChanged |
/ Occurs when Items are added to or removed from Association |
Properties
Name | Description |
AssociatedItemTypes | |
ItemsExist |
Return a true it this ItemObject has associations of this type |
Name |
The Property Name of this AssociationType |
Methods
Name | Description |
Add(I) |
Add an association with another Item |
CanDeleteAssociates(List<string>, string) |
Deletes all those Items that are associated to this object, by this association |
CheckNoAssociatesExist(List<string>, string) |
Checks that no associates exist, if they do then an error is added |
DeleteAssociates() |
Deletes all those Items that are associated to this object, by this association |
GetItem() |
If the is at most one item can associated with this item, it can be retrieved directly with this method. An error will be thrown, if there are more than one association. If there is no association, null will be returned |
GetItem(Func<Item, bool>) |
If the is at most one item can associated with this item that meets the predicate, it can be retrieved directly with this method. An error will be thrown, if there are more than one association. If there is no association, null will be returned |
GetItemObjectCollection() |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association |
GetItemObjectCollection(Func<I>, Action<I>, Action<I>) |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association The three delegates are intended to perform those actions indicated by their names. But the only real restriction is that they match the signature. |
GetItemObjectCollection(ItemObjectSource<I>) |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association |
GetItemObjectCollection(ItemObjectSource<I>, Func<I>, Action<I>, Action<I>) |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association The three delegates are intended to perform those actions indicated by their names. But the only real restriction is that they match the signature. |
GetItemObjectCollection(ItemObjectSource<I>, bool, bool, bool, bool) |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association |
GetItemObjectCollection(ItemObjectSource<I>, bool, bool, bool, bool, Func<I>) |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association |
GetItemObjectCollection(bool, bool, bool, bool) |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association |
GetItemObjectCollection(bool, bool, bool, bool, Func<I>) |
Returns an ItemObjectCollection that allows the items with which this Item is associated to be iterated through and items to be added and removed from this association |
GetItems() |
Returns an ItemObjectSource that allows the items with which this Item is associated to be iterated through |
GetItems(Func<Item, bool>) |
Returns an ItemObjectSource that allows the items with which this Item is associated to be iterated through, and filtered by a predicate |
GetIterator() |
Returns an ItemObjectIterator that allows the items with which this Item is associated to be iterated through |
IsAssociatedWith(I) |
Return a true it this ItemObject is already associated with the other |
NotifyPropertyWritten() |
Raises PropertyWritten on this object, with the Associations property name, once the transaction has been commit If call outside of transaction, has no effect. |
Remove(I) |
Remove an association with another Item |
RemoveAll() |
Remove an associations of a given type |
SetItem(I) |
If the item can be associated with a maximum of one Item with this AssociationType, it can be set directly with this method. An error will be thrown if there are more than one association. If it is set to null any association is removed. If it is set to an item, any existing association is removed, and a new association created. |