IDataStore.FindIndex<TModel>(Predicate<TModel> predicate, DwBuffer bufferType = DwBuffer.Primary) Method
.NET Standard 2.x
Generic method. Returns the index of the next row in the DataStore in which data meets the criteria defined by the predicate. The primary buffer is specified by default.
Namespace: DWNet.Data
Assembly: DWNet.Data.dll
Syntax
int FindIndex<TModel>(Predicate<TModel> predicate, DwBuffer bufferType = DwBuffer.Primary);
Type Parameters
TModel
The type of a model
class that matches with the current DataObject
.
Parameters
predicate
System.Predicate<TModel>
A Predicate<TModel>
that you want to use as the search criteria.
bufferType
DWNet.Data.DwBuffer
The buffer in which to find the row.
It is specified to the primary buffer by default.
Returns
System.Int32
Returns the zero-based index number of the row found.
Returns -1
if no row is found.
Examples
The following code example demonstrates how to return the index number of the department record by a Predicate<TModel>
object.
using Appeon.ApiDoc.Models;
using DWNet.Data;
using System;
namespace Appeon.ApiDoc.IDataStoreExamples
{
public class FindIndexExample
{
private readonly SchoolContext _context;
public FindIndexExample(SchoolContext dataContext)
{
// Sets the data context
_context = dataContext;
}
public void Example4()
{
// Instantiates a DataStore object with datawindow: d_department.
var datastore = new DataStore("d_department", _context);
datastore.Retrieve();
// The first record in the Department table is found:
// departmentid=1, name=Engineering
var findrow = datastore.FindIndex<D_Department>
(d => d.Departmentid < 3, DwBuffer.Primary);
Console.WriteLine("Department ID: {0}; Department Name: {1}",
datastore.GetItem<int>(findrow, "departmentid"),
datastore.GetItem<string>(findrow, "name"));
/*This code produces the following output:
Department ID: 1; Department Name: Engineering
*/
}
}
}
Example Refer To
Model Class: D_Department
DataWindow File: d_department
Applies to
.NET Standard
2.x