T
Chili.Opf3 Send comments on this topic.
Generic GetObjectSet(PersistentTypeSelector,IQuery) Method
See Also  Example
Chili.Opf3 Namespace > ObjectContext Class > GetObjectSet Method : Generic GetObjectSet(PersistentTypeSelector,IQuery) Method




typeSelector
Delegate invoked before each creating of a persistent object. This allows to dynamically change the type of the created persistent object or ignore some objects.
query
An instance of a class that implements the IQuery interface. This query is compiled and used to retrieve the objects from the storage.
Fills an ObjectSet with objects.

Syntax

Visual Basic (Declaration) 
Overloads Public Overridable Function GetObjectSet(Of T)( _
   ByVal typeSelector As PersistentTypeSelector, _
   ByVal query As IQuery _
) As ObjectSet(Of T)
Visual Basic (Usage)Copy Code
Dim instance As ObjectContext
Dim typeSelector As PersistentTypeSelector
Dim query As IQuery
Dim value As ObjectSet(Of T)
 
value = instance.GetObjectSet(Of T)(typeSelector, query)
C# 
public virtual ObjectSet<T> GetObjectSet<T>( 
   PersistentTypeSelector typeSelector,
   IQuery query
)
Managed Extensions for C++ 
public: virtual ObjectSet<T>* GetObjectSet<T>( 
   PersistentTypeSelector* typeSelector,
   IQuery* query
) 
C++/CLI 
public:
virtual ObjectSet<T>^ GetObjectSetgeneric<typename T>
( 
   PersistentTypeSelector^ typeSelector,
   IQuery^ query
) 

Parameters

typeSelector
Delegate invoked before each creating of a persistent object. This allows to dynamically change the type of the created persistent object or ignore some objects.
query
An instance of a class that implements the IQuery interface. This query is compiled and used to retrieve the objects from the storage.

Type Parameters

T

Return Value

An instance of an ObjectSet filled with the objects from the storage.

Example

The following example introduces to the use of the GetObjectSet routine.
C#Copy Code
// Creates a new ObjectContext that uses an MsSql Server as storage. 
ObjectContext context = new ObjectContext(new MsSqlStorage("sa", "",  
    "localhost", "application")); 
  
// ... Other code. 
  
// Get the ObjectSet with user matching the name and sorting them by name. 
ObjectSet<User> objectSet = context.GetObjectSet<User> 
    (new PersistentTypeSelector(MySelection),  
     new ObjectQuery<User>("Name like {0} SortBy Name Asc", "%mith%")); 
  
// Loop through all items and do something. 
foreach(User user in objectSet) 

    // Do something. 

 
// ... 
 
private void MySelection(object sender, FetchingStorageRecordEventArgs e) 

    if (e.DataRecord["Type"] == "1") 
    { 
        // Switch the type of the persistent that is created to User1. 
        e.Type = typeof(User1); 
    } 
    // Have a persistent of type User created. 
    e.Type = typeof(User); 

    

Remarks

Returns a filled ObjectSet. An ObjectSet is as a in memory cache for objects.

Requirements

Platforms: Windows 2000, Windows XP family, Windows Server 2003 family, Windows Vista family

See Also