Class SListElementRows
Elements in a static list. Collection of SListElementRow. Each element of the collection represents one row in the SListElement table.
Inheritance
Implements
Inherited Members
Namespace: SuperOfficeCRMRows
Assembly: SoDataBase.dll
Syntax
public class SListElementRows : TableRowsBase, INestedPersist, IEnumerable<INestedPersist>, INotifyCollectionChanged, IBindingList, IList, ICollection, IEnumerable
Remarks
Row collections can be created in several ways.
- Use the static CreateNew() method to create a new, empty collection. You can then add objects of type SListElementRow to it, and use methods like Save to operate on the whole collection.
- You can create a (nested) SListElementRows SListElementRows.CustomSearch object to obtain a query pre-populated with the correct tableinfo and return fields. This query can be modified with restrictions, etc. Then, use the static GetFromCustomSearch method to apply the query to the database and obtain the result as a Rows object, with one item for each table row that matched your query.
- For each non-unique index defined for the table, there is a corresponding GetFromIdx method to make retrieving data via the indexes easy.
Properties
this[int]
Get a SListElementRow given its index in the collection.
Declaration
public SListElementRow this[int index] { get; }
Parameters
| Type | Name | Description |
|---|---|---|
| int | index | Index of the SListElementRow in the collection |
Property Value
| Type | Description |
|---|---|
| SListElementRow |
Methods
Add(SListElementRow)
Add one SListElementRow to the collection.
Declaration
public int Add(SListElementRow row)
Parameters
| Type | Name | Description |
|---|---|---|
| SListElementRow | row | An instance of SListElementRow to be added to the collection. |
Returns
| Type | Description |
|---|---|
| int | The index of the added SListElementRow. |
AddNew()
Add a new instance of SListElementRow added to the collection.
Declaration
public SListElementRow AddNew()
Returns
| Type | Description |
|---|---|
| SListElementRow | A new instance of SListElementRow added to the collection. |
AddRange(IEnumerable<SListElementRow>)
Add a range of SListElementRow to the collection.
Declaration
public SListElementRows AddRange(IEnumerable<SListElementRow> rows)
Parameters
| Type | Name | Description |
|---|---|---|
| IEnumerableSListElementRow | rows |
Returns
| Type | Description |
|---|---|
| SListElementRows | The updated SListElementRows collection object. |
CreateChild()
Create a new instance of SListElementRow
Declaration
protected override TableRowBase CreateChild()
Returns
| Type | Description |
|---|---|
| TableRowBase | New instance of SListElementRow |
Overrides
CreateNew()
Create a new instance of the SListElementRows object. This collection will contain no rows.
Declaration
public static SListElementRows CreateNew()
Returns
| Type | Description |
|---|---|
| SListElementRows | A new instance of the SListElementRows object. |
Find(Predicate<SListElementRow>)
Apply the predicate to each element of the collection and return the first row that matches; if no match then return null
Declaration
public SListElementRow Find(Predicate<SListElementRow> condition)
Parameters
| Type | Name | Description |
|---|---|---|
| PredicateSListElementRow | condition |
Returns
| Type | Description |
|---|---|
| SListElementRow |
FindAll(Predicate<SListElementRow>)
Return a new collection that contains only those elements that match the condition. Elements are shared, not clones! of the original collection
Declaration
public SListElementRows FindAll(Predicate<SListElementRow> condition)
Parameters
| Type | Name | Description |
|---|---|---|
| PredicateSListElementRow | condition |
Returns
| Type | Description |
|---|---|
| SListElementRows |
ForEach(Action<SListElementRow>)
Method that iterates over all members and applies the action parameter to each of them
Declaration
public void ForEach(Action<SListElementRow> whatToDo)
Parameters
| Type | Name | Description |
|---|---|---|
| ActionSListElementRow | whatToDo |
GetFromCustomSearchAsync(CustomSearch, CancellationToken)
Create a new instance of the SListElementRows object, and populate it with data from a custom search. If the search returns no results, an empty collection will be returned; if the result contains rows, a collection of SListElementRow objects representing each row will be returned.
Declaration
public static Task<SListElementRows> GetFromCustomSearchAsync(SListElementRows.CustomSearch query, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| SListElementRowsCustomSearch | query | The custom search to execute against the database |
| CancellationToken | cancellationToken |
Returns
| Type | Description |
|---|---|
| TaskSListElementRows | A new instance of the SListElementRows object, reflecting the result of the query. |
GetFromIdxAddressAsync(string, CancellationToken)
Create a new instance of the SListElementRow object, by querying the database table via the index 'IDXS_list_elementAddress'. This method is intended to make it easy to use efficient queries that match a database index.
Declaration
public static Task<SListElementRows> GetFromIdxAddressAsync(string address, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| string | address | |
| CancellationToken | cancellationToken |
Returns
| Type | Description |
|---|---|
| TaskSListElementRows | Row object that represents the result of the search. IsNew will be true if the query did not match any row in the table |
Remarks
This method represents one of the unique indexes on the SListElement table. Non-unique indexes have corresponding inner classes and methods in the SListElementRows collection, since they may return more than one row.
GetFromIdxListIdAsync(int, CancellationToken)
Create a new instance of the SListElementRow object, by querying the database table via the index 'IDXS_list_elementList_id'. This method is intended to make it easy to use efficient queries that match a database index.
Declaration
public static Task<SListElementRows> GetFromIdxListIdAsync(int listId, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| int | listId | |
| CancellationToken | cancellationToken |
Returns
| Type | Description |
|---|---|
| TaskSListElementRows | Row object that represents the result of the search. IsNew will be true if the query did not match any row in the table |
Remarks
This method represents one of the unique indexes on the SListElement table. Non-unique indexes have corresponding inner classes and methods in the SListElementRows collection, since they may return more than one row.
GetFromIdxSmsAsync(string, CancellationToken)
Create a new instance of the SListElementRow object, by querying the database table via the index 'IDXS_list_elementSms'. This method is intended to make it easy to use efficient queries that match a database index.
Declaration
public static Task<SListElementRows> GetFromIdxSmsAsync(string sms, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| string | sms | |
| CancellationToken | cancellationToken |
Returns
| Type | Description |
|---|---|
| TaskSListElementRows | Row object that represents the result of the search. IsNew will be true if the query did not match any row in the table |
Remarks
This method represents one of the unique indexes on the SListElement table. Non-unique indexes have corresponding inner classes and methods in the SListElementRows collection, since they may return more than one row.
GetFromReaderAsync(SoDataReader, SListElementTableInfo, CancellationToken)
Create a new instance of the SListElementRows object, and populate it with data from a reader. If the search returns no results, an empty collection will be returned; if the result contains rows, a collection of SListElementRow objects representing each row will be returned.
Note that the internal logic starts by calling reader.Read(), which is correct if you hand the method the result of an ExecuteReader(), but if the reader has already been advanced one or more rows, the current row will be skipped and collection population will start with the next row.
Declaration
public static Task<SListElementRows> GetFromReaderAsync(SoDataReader reader, SListElementTableInfo tableInfo, CancellationToken cancellationToken = default)
Parameters
| Type | Name | Description |
|---|---|---|
| SoDataReader | reader | SoDataReader positioned to a valid database row. |
| SListElementTableInfo | tableInfo | SListElementTableInfo instance used in the query that is the source of the reader. The fields used from the reader will be those owned by this tableinfo object. |
| CancellationToken | cancellationToken |
Returns
| Type | Description |
|---|---|
| TaskSListElementRows |
Remove(SListElementRow)
Removes the given SListElementRow from the collection
Declaration
public void Remove(SListElementRow row)
Parameters
| Type | Name | Description |
|---|---|---|
| SListElementRow | row | the SListElementRow to be removed |
ToArray()
Declaration
public SListElementRow[] ToArray()
Returns
| Type | Description |
|---|---|
| SListElementRow |
ToString()
For debugging: Number of members, and the first (up to) 5 items
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string |