Actually, with a trick you can
Here's my unittest which shows how to fetch random rows from sqlserver: (note: this is 1.0.2005.1 specific code. )
[Test]
public void RandomFetchTest()
{
DataAccessAdapter adapter = new DataAccessAdapter();
try
{
IEntityField2 newIDField = EntityFieldFactory.Create(CustomerFieldIndex.Country);
newIDField.Name = "NEWID";
newIDField.Alias = "NEWID()";
newIDField.ExpressionToApply = new Expression();
ISortExpression sorter = new SortExpression(new SortClause(newIDField, null, SortOperator.Ascending));
EntityCollection customers = new EntityCollection(new CustomerEntityFactory());
adapter.FetchEntityCollection(customers, null, 0, sorter);
ResultsetViewer viewer = new ResultsetViewer();
viewer.BindCollection(customers);
viewer.SetTestPurpose("RandomFetchTest: fetches random customers");
viewer.ShowDialog(null);
}
finally
{
adapter.Dispose();
}
}
For v2.0, you need this:
[Test]
public void RandomFetchTest()
{
DataAccessAdapter adapter = new DataAccessAdapter();
try
{
IEntityField2 newIDField = EntityFieldFactory.Create(CustomerFieldIndex.Country);
newIDField.Alias = "NEWID()";
newIDField.ExpressionToApply = new Expression();
ISortExpression sorter = new SortExpression(new SortClause(newIDField, null, SortOperator.Ascending));
EntityCollection<CustomerEntity> customers = new EntityCollection<CustomerEntity>(new CustomerEntityFactory());
adapter.FetchEntityCollection(customers, null, 0, sorter);
ResultsetViewer viewer = new ResultsetViewer();
viewer.BindCollection( customers );
viewer.SetTestPurpose( "RandomFetchTest: fetches random customers" );
viewer.ShowDialog( null );
}
finally
{
adapter.Dispose();
}
}