PageRenderTime 19ms CodeModel.GetById 3ms app.highlight 6ms RepoModel.GetById 1ms app.codeStats 0ms

/Bowling/Bowling.Domain/App_Data/Bowling.Domain.XML

https://github.com/edqwerty1/Bowling
XML | 1452 lines | 1427 code | 25 blank | 0 comment | 0 complexity | 8b6beac44945d8be8ca12f3a8f9a4a9b MD5 | raw file

Large files files are truncated, but you can click here to view the full file

  1<?xml version="1.0"?>
  2<doc>
  3    <assembly>
  4        <name>Bowling.Domain</name>
  5    </assembly>
  6    <members>
  7        <member name="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">
  8            <summary>
  9            Defines the behavior of a read-only repository of items.
 10            </summary>
 11            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
 12        </member>
 13        <member name="M:Bowling.Domain.Abstract.IReadOnlyRepository`1.GetAsync(System.Func{System.Linq.IQueryable{`0},System.Linq.IQueryable{`0}},System.Threading.CancellationToken)">
 14            <summary>
 15            Retrieves all items in the repository satisfied by the specified query asynchronously.
 16            </summary>
 17            <param name="queryShaper">The <see cref="T:System.Func`2">function</see> that shapes the <see cref="T:System.Linq.IQueryable`1">query</see> to execute.</param>
 18            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
 19            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the retrieved <see cref="T:System.Collections.Generic.IEnumerable`1">sequence</see>
 20            of <typeparamref name="T">items</typeparamref>.</returns>
 21            <example>The following example demonstrates how to paginate the items in a repository using an example query.
 22            <code><![CDATA[
 23            using Microsoft.DesignPatterns.Examples;
 24            using System;
 25            using System.Collections.Generic;
 26            using System.Linq;
 27            using System.Threading;
 28            using System.Threading.Tasks;
 29            
 30            public async static void Main()
 31            {
 32                var index = 0;
 33                var repository = new MyRepository();
 34                var cancellationToken = new CancellationToken();
 35                
 36                foreach ( var item in await repository.GetAsync( q => q.Where( i => i.FirstName.StartsWith( "Jo" ) ).OrderBy( i => i.LastName ), cancellationToken );
 37                    Console.WriteLine( i => i.ToString() );
 38            }
 39            ]]>
 40            </code></example>
 41        </member>
 42        <member name="M:Bowling.Domain.Abstract.IReadOnlyRepository`1.GetAsync``1(System.Func{System.Linq.IQueryable{`0},``0},System.Threading.CancellationToken)">
 43            <summary>
 44            Retrieves a query result asynchronously.
 45            </summary>
 46            <typeparam name="TResult">The <see cref="T:System.Type">type</see> of result to retrieve.</typeparam>
 47            <param name="queryShaper">The <see cref="T:System.Func`2">function</see> that shapes the <see cref="T:System.Linq.IQueryable`1">query</see> to execute.</param>
 48            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
 49            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <typeparamref name="TResult">result</typeparamref> of the operation.</returns>
 50        </member>
 51        <member name="T:Bowling.Domain.Abstract.IRepository`1">
 52            <summary>
 53            Defines the behavior of a repository of items.
 54            </summary>
 55            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
 56        </member>
 57        <member name="M:Bowling.Domain.Abstract.IRepository`1.Add(`0)">
 58            <summary>
 59            Adds a new item to the repository.
 60            </summary>
 61            <param name="item">The new item to add.</param>
 62        </member>
 63        <member name="M:Bowling.Domain.Abstract.IRepository`1.Remove(`0)">
 64            <summary>
 65            Removes an item from the repository.
 66            </summary>
 67            <param name="item">The item to remove.</param>
 68        </member>
 69        <member name="M:Bowling.Domain.Abstract.IRepository`1.Update(`0)">
 70            <summary>
 71            Updates an existing item in the repository.
 72            </summary>
 73            <param name="item">The item to update.</param>
 74        </member>
 75        <member name="M:Bowling.Domain.Abstract.IRepository`1.DiscardChanges">
 76            <summary>
 77            Discards all changes to the items within the repository, if any.
 78            </summary>
 79        </member>
 80        <member name="M:Bowling.Domain.Abstract.IRepository`1.SaveChangesAsync(System.Threading.CancellationToken)">
 81            <summary>
 82            Saves all pending changes in the repository asynchronously.
 83            </summary>
 84            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
 85            <returns>A <see cref="T:System.Threading.Tasks.Task">task</see> representing the save operation.</returns>
 86        </member>
 87        <member name="P:Bowling.Domain.Abstract.IRepository`1.HasPendingChanges">
 88            <summary>
 89            Gets a value indicating whether there are any pending, unsaved changes.
 90            </summary>
 91            <value>True if there are any pending unsaved changes; otherwise, false.</value>
 92        </member>
 93        <member name="T:Bowling.Domain.Abstract.IRepositoryExtensions">
 94            <summary>
 95            Provides extension methods for the <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1"/> and <see cref="T:Bowling.Domain.Abstract.IRepository`1"/> interfaces.
 96            </summary>
 97        </member>
 98        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.GetAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Func{System.Linq.IQueryable{``0},System.Linq.IQueryable{``0}})">
 99            <summary>
100            Retrieves all items in the repository satisfied by the specified query asynchronously.
101            </summary>
102            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
103            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
104            <param name="queryShaper">The <see cref="T:System.Func`2">function</see> that shapes the <see cref="T:System.Linq.IQueryable`1">query</see> to execute.</param>
105            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the retrieved <see cref="T:System.Collections.Generic.IEnumerable`1">sequence</see>
106            of <typeparamref name="T">items</typeparamref>.</returns>
107            <example>The following example demonstrates how to paginate the items in a repository using an example query.
108            <code><![CDATA[
109            using Microsoft.DesignPatterns.Examples;
110            using System;
111            using System.Collections.Generic;
112            using System.Linq;
113            using System.Threading;
114            using System.Threading.Tasks;
115            
116            public async static void Main()
117            {
118                var index = 0;
119                var repository = new MyRepository();
120                
121                foreach ( var item in await repository.GetAsync( q => q.Where( i => i.FirstName.StartsWith( "Jo" ) ).OrderBy( i => i.LastName ) );
122                    Console.WriteLine( i => i.ToString() );
123            }
124            ]]>
125            </code></example>
126        </member>
127        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.GetAsync``2(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Func{System.Linq.IQueryable{``0},``1})">
128            <summary>
129            Retrieves a query result asynchronously.
130            </summary>
131            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
132            <typeparam name="TResult">The <see cref="T:System.Type">type</see> of result to retrieve.</typeparam>
133            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
134            <param name="queryShaper">The <see cref="T:System.Func`2">function</see> that shapes the <see cref="T:System.Linq.IQueryable`1">query</see> to execute.</param>
135            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <typeparamref name="TResult">result</typeparamref> of the operation.</returns>
136        </member>
137        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.GetAllAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0})">
138            <summary>
139            Retrieves all items in the repository asynchronously.
140            </summary>
141            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
142            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
143            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <see cref="T:System.Collections.Generic.IEnumerable`1">sequence</see>
144            of all <typeparamref name="T">items</typeparamref> in the repository.</returns>
145            <example>The following example demonstrates how to retrieve all items in a repository.
146            <code><![CDATA[
147            using Microsoft.DesignPatterns.Examples;
148            using System;
149            using System.Collections.Generic;
150            using System.Linq;
151            using System.Threading;
152            using System.Threading.Tasks;
153            
154            public async static void Main()
155            {
156                var repository = new MyRepository();
157                
158                foreach ( var item in await repository.GetAllAsync( i => i.LastName == "Doe" ) )
159                    Console.WriteLine( item.ToString() );
160            }
161            ]]>
162            </code></example>
163        </member>
164        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.GetAllAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Threading.CancellationToken)">
165            <summary>
166            Retrieves all items in the repository asynchronously.
167            </summary>
168            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
169            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
170            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
171            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <see cref="T:System.Collections.Generic.IEnumerable`1">sequence</see>
172            of all <typeparamref name="T">items</typeparamref> in the repository.</returns>
173            <example>The following example demonstrates how to retrieve all items in a repository.
174            <code><![CDATA[
175            using Microsoft.DesignPatterns.Examples;
176            using System;
177            using System.Collections.Generic;
178            using System.Linq;
179            using System.Threading;
180            using System.Threading.Tasks;
181            
182            public async static void Main()
183            {
184                var repository = new MyRepository();
185                var cancellationToken = new CancellationToken();
186                
187                foreach ( var item in await repository.GetAllAsync( i => i.LastName == "Doe", cancellationToken ) )
188                    Console.WriteLine( item.ToString() );
189            }
190            ]]>
191            </code></example>
192        </member>
193        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.FindByAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
194            <summary>
195            Searches for items in the repository that match the specified predicate asynchronously.
196            </summary>
197            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
198            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
199            <param name="predicate">The <see cref="T:System.Linq.Expressions.Expression`1">expression</see> representing the predicate used to
200            match the requested <typeparamref name="T">items</typeparamref>.</param>
201            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the matched <see cref="T:System.Collections.Generic.IEnumerable`1">sequence</see>
202            of <typeparamref name="T">items</typeparamref>.</returns>
203            <example>The following example demonstrates how to find items in a repository.
204            <code><![CDATA[
205            using Microsoft.DesignPatterns.Examples;
206            using System;
207            using System.Collections.Generic;
208            using System.Linq;
209            using System.Threading;
210            using System.Threading.Tasks;
211            
212            public async static void Main()
213            {
214                var repository = new MyRepository();
215                var items = await repository.FindByAsync( i => i.LastName == "Doe" );
216                items.ForEach( i => Console.WriteLine( i.ToString() ) );
217            }
218            ]]>
219            </code></example>
220        </member>
221        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.FindByAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Threading.CancellationToken)">
222            <summary>
223            Searches for items in the repository that match the specified predicate asynchronously.
224            </summary>
225            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
226            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
227            <param name="predicate">The <see cref="T:System.Linq.Expressions.Expression`1">expression</see> representing the predicate used to
228            match the requested <typeparamref name="T">items</typeparamref>.</param>
229            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
230            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the matched <see cref="T:System.Collections.Generic.IEnumerable`1">sequence</see>
231            of <typeparamref name="T">items</typeparamref>.</returns>
232            <example>The following example demonstrates how to find items in a repository.
233            <code><![CDATA[
234            using Microsoft.DesignPatterns.Examples;
235            using System;
236            using System.Collections.Generic;
237            using System.Linq;
238            using System.Threading;
239            using System.Threading.Tasks;
240            
241            public async static void Main()
242            {
243                var repository = new MyRepository();
244                var cancellationToken = new CancellationToken();
245                var items = await repository.FindByAsync( i => i.LastName == "Doe", cancellationToken );
246                items.ForEach( i => Console.WriteLine( i.ToString() ) );
247            }
248            ]]>
249            </code></example>
250        </member>
251        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.GetSingleAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}})">
252            <summary>
253            Retrieves a single item in the repository matching the specified predicate asynchronously.
254            </summary>
255            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
256            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
257            <param name="predicate">The <see cref="T:System.Linq.Expressions.Expression`1">expression</see> representing the predicate used to
258            match the requested <typeparamref name="T">item</typeparamref>.</param>
259            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the matched <typeparamref name="T">item</typeparamref>
260            or null if no match was found.</returns>
261            <example>The following example demonstrates how to retrieve a single item from a repository.
262            <code><![CDATA[
263            using Microsoft.DesignPatterns.Examples;
264            using System;
265            using System.Collections.Generic;
266            using System.Linq;
267            using System.Threading;
268            using System.Threading.Tasks;
269            
270            public async static void Main()
271            {
272                var repository = new MyRepository();
273                var item = await repository.GetSingleAsync( i => i.Id == 1 );
274                Console.WriteLine( item.ToString() );
275            }
276            ]]>
277            </code></example>
278        </member>
279        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.GetSingleAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Linq.Expressions.Expression{System.Func{``0,System.Boolean}},System.Threading.CancellationToken)">
280            <summary>
281            Retrieves a single item in the repository matching the specified predicate asynchronously.
282            </summary>
283            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
284            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
285            <param name="predicate">The <see cref="T:System.Linq.Expressions.Expression`1">expression</see> representing the predicate used to
286            match the requested <typeparamref name="T">item</typeparamref>.</param>
287            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
288            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the matched <typeparamref name="T">item</typeparamref>
289            or null if no match was found.</returns>
290            <example>The following example demonstrates how to retrieve a single item from a repository.
291            <code><![CDATA[
292            using Microsoft.DesignPatterns.Examples;
293            using System;
294            using System.Collections.Generic;
295            using System.Linq;
296            using System.Threading;
297            using System.Threading.Tasks;
298            
299            public async static void Main()
300            {
301                var repository = new MyRepository();
302                var item = await repository.GetSingleAsync( i => i.Id == 1 );
303                Console.WriteLine( item.ToString() );
304            }
305            ]]>
306            </code></example>
307        </member>
308        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.PaginateAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Int32,System.Int32)">
309            <summary>
310            Retrieves and pages all items in the repository asynchronously.
311            </summary>
312            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
313            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
314            <param name="pageIndex">The zero-based index of the data page to retrieve.</param>
315            <param name="pageSize">The size of the data page to retrieve.</param>
316            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <see cref="T:Bowling.Domain.Concrete.EntityFramework.PagedCollection`1">paged collection</see>
317            of <typeparamref name="T">items</typeparamref>.</returns>
318            <example>The following example demonstrates how to paginate all items in a repository.
319            <code><![CDATA[
320            using Microsoft.DesignPatterns.Examples;
321            using System;
322            using System.Collections.Generic;
323            using System.Linq;
324            using System.Threading;
325            using System.Threading.Tasks;
326            
327            public async static void Main()
328            {
329                var index = 0;
330                var repository = new MyRepository();
331                var items = await repository.PaginateAsync( index, 10 );
332                var retrieved = items.Count;
333                
334                items.ForEach( i => Console.WriteLine( i.ToString() ) );
335                
336                while ( retrieved < items.TotalCount )
337                {
338                    items = await repository.PaginateAsync( ++index, 10 );
339                    retrieved += items.Count;
340                    items.ForEach( i => Console.WriteLine( i.ToString() ) );
341                }
342            }
343            ]]>
344            </code></example>
345        </member>
346        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.PaginateAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Int32,System.Int32,System.Threading.CancellationToken)">
347            <summary>
348            Retrieves and pages all items in the repository asynchronously.
349            </summary>
350            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
351            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
352            <param name="pageIndex">The zero-based index of the data page to retrieve.</param>
353            <param name="pageSize">The size of the data page to retrieve.</param>
354            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
355            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <see cref="T:Bowling.Domain.Concrete.EntityFramework.PagedCollection`1">paged collection</see>
356            of <typeparamref name="T">items</typeparamref>.</returns>
357            <example>The following example demonstrates how to paginate all items in a repository.
358            <code><![CDATA[
359            using Microsoft.DesignPatterns.Examples;
360            using System;
361            using System.Collections.Generic;
362            using System.Linq;
363            using System.Threading;
364            using System.Threading.Tasks;
365            
366            public async static void Main()
367            {
368                var index = 0;
369                var repository = new MyRepository();
370                var cancellationToken = new CancellationToken();
371                var items = await repository.PaginateAsync( index, 10, cancellationToken );
372                var retrieved = items.Count;
373                
374                items.ForEach( i => Console.WriteLine( i.ToString() ) );
375                
376                while ( retrieved < items.TotalCount )
377                {
378                    items = await repository.PaginateAsync( ++index, 10, cancellationToken );
379                    retrieved += items.Count;
380                    items.ForEach( i => Console.WriteLine( i.ToString() ) );
381                }
382            }
383            ]]>
384            </code></example>
385        </member>
386        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.PaginateAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Func{System.Linq.IQueryable{``0},System.Linq.IQueryable{``0}},System.Int32,System.Int32)">
387            <summary>
388            Retrieves and pages matching items in the repository asynchronously.
389            </summary>
390            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
391            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
392            <param name="queryShaper">The <see cref="T:System.Func`2">function</see> that shapes the <see cref="T:System.Linq.IQueryable`1">query</see> to execute.</param>
393            <param name="pageIndex">The zero-based index of the data page to retrieve.</param>
394            <param name="pageSize">The size of the data page to retrieve.</param>
395            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <see cref="T:Bowling.Domain.Concrete.EntityFramework.PagedCollection`1">paged collection</see>
396            of <typeparamref name="T">items</typeparamref>.</returns>
397            <example>The following example demonstrates how to paginate all items in a repository.
398            <code><![CDATA[
399            using Microsoft.DesignPatterns.Examples;
400            using System;
401            using System.Collections.Generic;
402            using System.Linq;
403            using System.Threading;
404            using System.Threading.Tasks;
405            
406            public async static void Main()
407            {
408                var index = 0;
409                var repository = new MyRepository();
410                var items = await repository.PaginateAsync( q => q.OrderBy( i => LastName ), index, 10 );
411                var retrieved = items.Count;
412                
413                items.ForEach( i => Console.WriteLine( i.ToString() ) );
414                
415                while ( retrieved < items.TotalCount )
416                {
417                    items = await repository.PaginateAsync( q => q.OrderBy( i => LastName ), ++index, 10 );
418                    retrieved += items.Count;
419                    items.ForEach( i => Console.WriteLine( i.ToString() ) );
420                }
421            }
422            ]]>
423            </code></example>
424        </member>
425        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.PaginateAsync``1(Bowling.Domain.Abstract.IReadOnlyRepository{``0},System.Func{System.Linq.IQueryable{``0},System.Linq.IQueryable{``0}},System.Int32,System.Int32,System.Threading.CancellationToken)">
426            <summary>
427            Retrieves and pages matching items in the repository asynchronously.
428            </summary>
429            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
430            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
431            <param name="queryShaper">The <see cref="T:System.Func`2">function</see> that shapes the <see cref="T:System.Linq.IQueryable`1">query</see> to execute.</param>
432            <param name="pageIndex">The zero-based index of the data page to retrieve.</param>
433            <param name="pageSize">The size of the data page to retrieve.</param>
434            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
435            <returns>A <see cref="T:System.Threading.Tasks.Task`1">task</see> containing the <see cref="T:Bowling.Domain.Concrete.EntityFramework.PagedCollection`1">paged collection</see>
436            of <typeparamref name="T">items</typeparamref>.</returns>
437            <example>The following example demonstrates how to paginate all items in a repository.
438            <code><![CDATA[
439            using Microsoft.DesignPatterns.Examples;
440            using System;
441            using System.Collections.Generic;
442            using System.Linq;
443            using System.Threading;
444            using System.Threading.Tasks;
445            
446            public async static void Main()
447            {
448                var index = 0;
449                var repository = new MyRepository();
450                var cancellationToken = new CancellationToken();
451                var items = await repository.PaginateAsync( q => q.OrderBy( i => LastName ), index, 10, cancellationToken );
452                var retrieved = items.Count;
453                
454                items.ForEach( i => Console.WriteLine( i.ToString() ) );
455                
456                while ( retrieved < items.TotalCount )
457                {
458                    items = await repository.PaginateAsync( q => q.OrderBy( i => LastName ), ++index, 10, cancellationToken );
459                    retrieved += items.Count;
460                    items.ForEach( i => Console.WriteLine( i.ToString() ) );
461                }
462            }
463            ]]>
464            </code></example>
465        </member>
466        <member name="M:Bowling.Domain.Abstract.IRepositoryExtensions.SaveChangesAsync``1(Bowling.Domain.Abstract.IRepository{``0})">
467            <summary>
468            Saves all pending changes in the repository asynchronously.
469            </summary>
470            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the repository.</typeparam>
471            <param name="repository">The extended <see cref="T:Bowling.Domain.Abstract.IReadOnlyRepository`1">repository</see>.</param>
472            <returns>A <see cref="T:System.Threading.Tasks.Task">task</see> representing the save operation.</returns>
473        </member>
474        <member name="T:Bowling.Domain.Abstract.ISpecification`1">
475            <summary>
476            Defines the behavior of a single, self-evaluating rule supporting simple binary evaluation semantics using the specification pattern.
477            </summary>
478            <typeparam name="T">The <see cref="T:System.Type">type</see> of item to evaluate.</typeparam>
479        </member>
480        <member name="M:Bowling.Domain.Abstract.ISpecification`1.IsSatisfiedBy(`0)">
481            <summary>
482            Determines whether the specified item satisfies the specification.
483            </summary>
484            <param name="item">The item of <typeparamref name="T"/> to evaluate.</param>
485            <returns>True if <paramref name="item"/> satisfies the specification; otherwise, false.</returns>
486        </member>
487        <member name="M:Bowling.Domain.Abstract.ISpecification`1.And(Bowling.Domain.Abstract.ISpecification{`0})">
488            <summary>
489            Combines the current specification with the specified specification using logical 'And' semantics.
490            </summary>
491            <param name="other">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> to union.</param>
492            <returns>A unioned <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
493        </member>
494        <member name="M:Bowling.Domain.Abstract.ISpecification`1.Or(Bowling.Domain.Abstract.ISpecification{`0})">
495            <summary>
496            Combines the current specification with the specified specification using logical 'Or' semantics.
497            </summary>
498            <param name="other">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> to union.</param>
499            <returns>A unioned <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
500        </member>
501        <member name="M:Bowling.Domain.Abstract.ISpecification`1.Not">
502            <summary>
503            Returns the logical compliment of the specification.
504            </summary>
505            <returns>A <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
506        </member>
507        <member name="T:Bowling.Domain.Abstract.ISpecificationExtensions">
508            <summary>
509            Provides extension methods for the <see cref="T:Bowling.Domain.Abstract.ISpecification`1"/> interface.
510            </summary>
511        </member>
512        <member name="M:Bowling.Domain.Abstract.ISpecificationExtensions.And``1(Bowling.Domain.Abstract.ISpecification{``0},System.Func{``0,System.Boolean})">
513            <summary>
514            Combines the current specification with the specified specification using logical 'And' semantics.
515            </summary>
516            <typeparam name="T">The <see cref="T:System.Type">type</see> of item to evaluate.</typeparam>
517            <param name="specification">The left-hand side <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see>.</param>
518            <param name="other">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> to union.</param>
519            <returns>A unioned <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
520        </member>
521        <member name="M:Bowling.Domain.Abstract.ISpecificationExtensions.Or``1(Bowling.Domain.Abstract.ISpecification{``0},System.Func{``0,System.Boolean})">
522            <summary>
523            Combines the current specification with the specified specification using logical 'Or' semantics.
524            </summary>
525            <typeparam name="T">The <see cref="T:System.Type">type</see> of item to evaluate.</typeparam>
526            <param name="specification">The left-hand side <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see>.</param>
527            <param name="other">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> to union.</param>
528            <returns>A unioned <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
529        </member>
530        <member name="T:Bowling.Domain.Abstract.IUnitOfWorkExtensions">
531            <summary>
532            Provides extension methods for the <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1"/> class.
533            </summary>
534        </member>
535        <member name="M:Bowling.Domain.Abstract.IUnitOfWorkExtensions.CommitAsync``1(Bowling.Domain.Abstract.IUnitOfWork{``0})">
536            <summary>
537            Commits all pending units of work asynchronously.
538            </summary>
539            <typeparam name="T">The <see cref="T:System.Type">type</see> of item in the unit of work.</typeparam>
540            <param name="unitOfWork">The extended <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1">unit of work</see>.</param>
541            <returns>A <see cref="T:System.Threading.Tasks.Task">task</see> representing the commit operation.</returns>
542        </member>
543        <member name="T:Bowling.Domain.Abstract.IUnitOfWorkFactory">
544            <summary>
545            Defines the behavior for a unit of work factory.
546            </summary>
547        </member>
548        <member name="M:Bowling.Domain.Abstract.IUnitOfWorkFactory.Create``1">
549            <summary>
550            Returns a new unit of work.
551            </summary>
552            <typeparam name="TItem">The <see cref="T:System.Type">type</see> of item to create a <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1">unit of work</see> for.</typeparam>
553            <returns>A <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1">unit of work</see>.</returns>
554        </member>
555        <member name="M:Bowling.Domain.Abstract.IUnitOfWorkFactory.GetCurrent``1">
556            <summary>
557            Gets the current unit of work for a given type.
558            </summary>
559            <typeparam name="TItem">The <see cref="T:System.Type">type</see> of item to retrieve a <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1">unit of work</see> for.</typeparam>
560            <returns>A <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1">unit of work</see>.</returns>
561        </member>
562        <member name="M:Bowling.Domain.Abstract.IUnitOfWorkFactory.SetCurrent``1(Bowling.Domain.Abstract.IUnitOfWork{``0})">
563            <summary>
564            Sets the current unit of work for a given type.
565            </summary>
566            <typeparam name="TItem">The <see cref="T:System.Type">type</see> of item to set a <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1">unit of work</see> for.</typeparam>
567            <param name="unitOfWork">The current <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1">unit of work</see>.</param>
568        </member>
569        <member name="P:Bowling.Domain.Abstract.IUnitOfWorkFactory.Specification">
570            <summary>
571            Gets the specification associated with the factory.
572            </summary>
573            <value>A <see cref="T:Bowling.Domain.Abstract.ISpecification`1"/> object.</value>
574        </member>
575        <member name="T:Bowling.Domain.Abstract.IUnitOfWorkFactoryProvider">
576            <summary>
577            Defines the behavior of an object that can locate and provide unit of work factories.
578            </summary>
579        </member>
580        <member name="P:Bowling.Domain.Abstract.IUnitOfWorkFactoryProvider.Factories">
581            <summary>
582            Gets a sequence of unit of work factories supported by the provider.
583            </summary>
584            <value>A <see cref="T:System.Collections.Generic.IEnumerable`1">sequence</see> of <see cref="T:Bowling.Domain.Abstract.IUnitOfWorkFactory">unit of work factories</see>.</value>
585        </member>
586        <member name="T:Bowling.Domain.Abstract.IUnitOfWork`1">
587            <summary>
588            Defines the behavior for a unit of work.
589            </summary>
590            <typeparam name="T">The <see cref="T:System.Type">type</see> of item to perform work on.</typeparam>
591        </member>
592        <member name="M:Bowling.Domain.Abstract.IUnitOfWork`1.RegisterNew(`0)">
593            <summary>
594            Registers a new item.
595            </summary>
596            <param name="item">The new item to register.</param>
597        </member>
598        <member name="M:Bowling.Domain.Abstract.IUnitOfWork`1.RegisterChanged(`0)">
599            <summary>
600            Registers a changed item.
601            </summary>
602            <param name="item">The changed item to register.</param>
603        </member>
604        <member name="M:Bowling.Domain.Abstract.IUnitOfWork`1.RegisterRemoved(`0)">
605            <summary>
606            Registers a removed item.
607            </summary>
608            <param name="item">The removed item to register.</param>
609        </member>
610        <member name="M:Bowling.Domain.Abstract.IUnitOfWork`1.Unregister(`0)">
611            <summary>
612            Unregisters an item.
613            </summary>
614            <param name="item">The item to unregister.</param>
615        </member>
616        <member name="M:Bowling.Domain.Abstract.IUnitOfWork`1.Rollback">
617            <summary>
618            Rolls back all pending units of work.
619            </summary>
620        </member>
621        <member name="M:Bowling.Domain.Abstract.IUnitOfWork`1.CommitAsync(System.Threading.CancellationToken)">
622            <summary>
623            Commits all pending units of work asynchronously.
624            </summary>
625            <param name="cancellationToken">The <see cref="T:System.Threading.CancellationToken">cancellation token</see> that can be used to cancel the operation.</param>
626            <returns>A <see cref="T:System.Threading.Tasks.Task">task</see> representing the commit operation.</returns>
627        </member>
628        <member name="P:Bowling.Domain.Abstract.IUnitOfWork`1.HasPendingChanges">
629            <summary>
630            Gets a value indicating whether there are any pending, uncommitted changes.
631            </summary>
632            <value>True if there are any pending uncommitted changes; otherwise, false.</value>
633        </member>
634        <member name="T:Bowling.Domain.Abstract.IUnitOfWorkContract`1">
635            <summary>
636            Provides the code contract for the <see cref="T:Bowling.Domain.Abstract.IUnitOfWork`1"/> interface.
637            </summary>
638            <typeparam name="T">The <see cref="T:System.Type">type</see> of item to perform work on.</typeparam>
639        </member>
640        <member name="T:Bowling.Domain.Concrete.EntityFramework.BaseContext">
641            <summary>
642            Base database context from which all other database contexts will be extended
643            </summary>
644        </member>
645        <member name="T:Bowling.Domain.Concrete.EntityFramework.IDbContext">
646            <summary>
647            Interface for database contexts
648            </summary>
649        </member>
650        <member name="M:Bowling.Domain.Concrete.EntityFramework.IDbContext.SaveChanges">
651            <summary>
652            Save the changes to all entities within the current context
653            </summary>
654            <returns>Error code</returns>
655        </member>
656        <member name="M:Bowling.Domain.Concrete.EntityFramework.IDbContext.Set``1">
657            <summary>
658            Returns a DbSet for the current entity type
659            </summary>
660            <typeparam name="TEntity">The entity type</typeparam>
661            <returns>DbSet</returns>
662        </member>
663        <member name="M:Bowling.Domain.Concrete.EntityFramework.IDbContext.Refresh(System.Object)">
664            <summary>
665            This refreshes the contents of a given object from the database.
666            </summary>
667            <param name="entity">Object to be refreshed</param>
668        </member>
669        <member name="M:Bowling.Domain.Concrete.EntityFramework.IDbContext.Entry(System.Object)">
670            <summary>
671            Gets a System.Data.Entity.Infrastructure.DbEntityEntry object for the given entity
672            </summary>
673            <param name="entity">Entity to use</param>
674            <returns>DbEntityEntry</returns>
675        </member>
676        <member name="M:Bowling.Domain.Concrete.EntityFramework.BaseContext.#cctor">
677            <summary>
678            Static constructor to create an empty context
679            </summary>
680        </member>
681        <member name="M:Bowling.Domain.Concrete.EntityFramework.BaseContext.#ctor(System.String)">
682            <summary>
683            Constructor creating a database context from a given connection string
684            </summary>
685            <param name="nameOrConnectionString">Connection string</param>
686        </member>
687        <member name="M:Bowling.Domain.Concrete.EntityFramework.BaseContext.#ctor(System.Data.Common.DbConnection)">
688            <summary>
689            Constructor creating a database context from a given database connection
690            </summary>
691            <param name="dbConnection">Database connection</param>
692        </member>
693        <member name="M:Bowling.Domain.Concrete.EntityFramework.BaseContext.OnModelCreating(System.Data.Entity.DbModelBuilder)">
694            <summary>
695            Model creating event
696            </summary>
697            <param name="modelBuilder">Model builder object being used</param>
698        </member>
699        <member name="M:Bowling.Domain.Concrete.EntityFramework.BaseContext.Refresh(System.Object)">
700            <summary>
701            This refreshes the contents of a given object from the database.
702            </summary>
703            <param name="entity">Entity to refresh</param>
704        </member>
705        <member name="M:Bowling.Domain.Concrete.EntityFramework.BaseContext.SaveChanges">
706            <summary>
707            Calls the DbContext SaveChanges. If it fails validation, it will be handled with our own exception
708            </summary>
709            <returns>Error code</returns>
710        </member>
711        <member name="P:Bowling.Domain.Concrete.EntityFramework.BaseContext.NamespaceDataContext">
712            <summary>
713            Name space for context
714            </summary>
715            <returns>Name space</returns>
716        </member>
717        <member name="P:Bowling.Domain.Concrete.EntityFramework.BaseContext.Schema">
718            <summary>
719            Schema for the context
720            </summary>
721            <returns>Schema</returns>
722        </member>
723        <member name="T:Bowling.Domain.Concrete.EntityFramework.BaseEntityMap`1">
724            <summary>
725            Base Entity Framework mapping class for Insight domain entities. This class
726            configures the attributes on the base entity and also properties on the specified
727            domain entity type by looking at settings provided via the SymEntity attribute
728            and properties specified by the Field Definitions for the class.
729            </summary>
730            <typeparam name="T">The type of the entity being mapped</typeparam>
731        </member>
732        <member name="M:Bowling.Domain.Concrete.EntityFramework.BaseEntityMap`1.#ctor">
733            <summary>
734            Constructor creating the default mappings on all entities
735            </summary>
736        </member>
737        <member name="T:Bowling.Domain.Concrete.EntityFramework.DataContext">
738            <summary>
739            Context for the main database
740            </summary>
741        </member>
742        <member name="M:Bowling.Domain.Concrete.EntityFramework.DataContext.#cctor">
743            <summary>
744            Static constructor to create an empty data context.  If we are building the database instruct 
745            the system to create a database if it doesn't exst.  This cannot be used for normal usage as
746            it is incompatible with caching
747            </summary>
748        </member>
749        <member name="M:Bowling.Domain.Concrete.EntityFramework.DataContext.#ctor(System.String)">
750            <summary>
751            Constructor to create a data context from the given connection string,
752            setting whether it is a management database
753            </summary>
754            <param name="connectionString">Connection string</param>
755            <param name="managementModelOnly">Management model only</param>
756        </member>
757        <member name="M:Bowling.Domain.Concrete.EntityFramework.DataContext.#ctor">
758            <summary>
759            Constructor to create a data context from the stored connection string,
760            setting whether it is a management database
761            </summary>
762            <param name="managementContext">Management model only</param>
763        </member>
764        <member name="T:Bowling.Domain.Concrete.EntityFramework.LogicalAndSpecification`1">
765            <summary>
766            Represents a specification that models a logical 'And' expression <seealso cref="T:Bowling.Domain.Concrete.EntityFramework.Specification`1"/>.
767            </summary>
768            <typeparam name="T">The <see cref="T:System.Type">type</see> of item to evaluate.</typeparam>
769        </member>
770        <member name="T:Bowling.Domain.Concrete.EntityFramework.SpecificationBase`1">
771            <summary>
772            Represents a single, self-evaluating rule supporting simple binary evaluation semantics.
773            </summary>
774            <typeparam name="T">The <see cref="T:System.Type">type</see> of item to evaluate.</typeparam>
775        </member>
776        <member name="M:Bowling.Domain.Concrete.EntityFramework.SpecificationBase`1.#ctor">
777            <summary>
778            Initializes a new instance of the <see cref="T:Bowling.Domain.Concrete.EntityFramework.SpecificationBase`1"/> class.
779            </summary>
780        </member>
781        <member name="M:Bowling.Domain.Concrete.EntityFramework.SpecificationBase`1.IsSatisfiedBy(`0)">
782            <summary>
783            Determines whether the specified item satisfies the specification.
784            </summary>
785            <param name="item">The item of <typeparamref name="T"/> to evaluate.</param>
786            <returns>True if <paramref name="item"/> satisfies the specification; otherwise, false.</returns>
787        </member>
788        <member name="M:Bowling.Domain.Concrete.EntityFramework.SpecificationBase`1.And(Bowling.Domain.Abstract.ISpecification{`0})">
789            <summary>
790            Combines the current specification with the specified specification using logical 'And' semantics.
791            </summary>
792            <param name="other">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> to union.</param>
793            <returns>A unioned <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
794        </member>
795        <member name="M:Bowling.Domain.Concrete.EntityFramework.SpecificationBase`1.Or(Bowling.Domain.Abstract.ISpecification{`0})">
796            <summary>
797            Combines the current specification with the specified specification using logical 'Or' semantics.
798            </summary>
799            <param name="other">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> to union.</param>
800            <returns>A unioned <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
801        </member>
802        <member name="M:Bowling.Domain.Concrete.EntityFramework.SpecificationBase`1.Not">
803            <summary>
804            Returns the logical compliment of the specification.
805            </summary>
806            <returns>A <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> object.</returns>
807        </member>
808        <member name="M:Bowling.Domain.Concrete.EntityFramework.LogicalAndSpecification`1.#ctor(Bowling.Domain.Abstract.ISpecification{`0},Bowling.Domain.Abstract.ISpecification{`0})">
809            <summary>
810            Initializes a new instance of the <see cref="T:Bowling.Domain.Concrete.EntityFramework.LogicalAndSpecification`1"/> class.
811            </summary>
812            <param name="left">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> representing the left-hand side of the unioned specification.</param>
813            <param name="right">The <see cref="T:Bowling.Domain.Abstract.ISpecification`1">specification</see> representing the right-hand side of the unioned specification.</param>
814        </member>
815        <member name="M:Bowling.Domain.Concrete.EntityFramework.LogicalAndSpecification`1.IsSatisfiedBy(`0)">
816            <summary>
817            Determines whether the specified item satisfies the specification.
818            </summary>
819            <param name="item">The item of <typeparamref name="T"/> to evaluate.</param>
820            <returns>True if <paramref name="item"/> satisfies the specification; otherwise, false.</returns>
821        </me…

Large files files are truncated, but you can click here to view the full file