PageRenderTime 56ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 0ms

/mcs/class/referencesource/System.Data.Linq/SqlClient/Reader/ObjectReader.cs

http://github.com/mono/mono
C# | 45 lines | 38 code | 7 blank | 0 comment | 0 complexity | a0d704d13271397722694b5d62d64097 MD5 | raw file
Possible License(s): GPL-2.0, CC-BY-SA-3.0, LGPL-2.0, MPL-2.0-no-copyleft-exception, LGPL-2.1, Unlicense, Apache-2.0
  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using System.Collections.ObjectModel;
  5. using System.Data;
  6. using System.Linq.Expressions;
  7. using System.IO;
  8. using System.Linq;
  9. using System.Reflection;
  10. using System.Text;
  11. using System.Globalization;
  12. using System.Data.Common;
  13. using System.Data.Linq;
  14. using System.Data.Linq.Provider;
  15. namespace System.Data.Linq.SqlClient {
  16. internal interface IObjectReader : IEnumerator, IDisposable {
  17. IObjectReaderSession Session { get; }
  18. }
  19. internal interface IObjectReaderSession : IConnectionUser, IDisposable {
  20. bool IsBuffered { get; }
  21. void Buffer();
  22. }
  23. internal interface IReaderProvider : IProvider {
  24. IDataServices Services { get; }
  25. IConnectionManager ConnectionManager { get; }
  26. }
  27. internal interface IObjectReaderFactory {
  28. IObjectReader Create(DbDataReader reader, bool disposeReader, IReaderProvider provider, object[] parentArgs, object[] userArgs, ICompiledSubQuery[] subQueries);
  29. IObjectReader GetNextResult(IObjectReaderSession session, bool disposeReader);
  30. }
  31. internal interface IObjectReaderCompiler {
  32. IObjectReaderFactory Compile(SqlExpression expression, Type elementType);
  33. IObjectReaderSession CreateSession(DbDataReader reader, IReaderProvider provider, object[] parentArgs, object[] userArgs, ICompiledSubQuery[] subQueries);
  34. }
  35. internal interface ICompiledSubQuery {
  36. IExecuteResult Execute(IProvider provider, object[] parentArgs, object[] userArgs);
  37. }
  38. }