diff --git a/AmalgamationTool/AmalgamationTool.csproj b/AmalgamationTool/AmalgamationTool.csproj
index ce27200..8ddb6e2 100644
--- a/AmalgamationTool/AmalgamationTool.csproj
+++ b/AmalgamationTool/AmalgamationTool.csproj
@@ -1,63 +1,13 @@
-
-
-
- Debug
- x86
- 8.0.30703
- 2.0
- {A64D2052-D0CD-488E-BF05-E5952615D926}
- Exe
- Properties
- AmalgamationTool
- AmalgamationTool
- v4.8
-
-
- 512
-
-
- x86
- true
- full
- false
- bin\Debug\
- DEBUG;TRACE
- prompt
- 4
- false
-
-
- x86
- pdbonly
- true
- bin\Release\
- TRACE
- prompt
- 4
- false
-
-
-
-
-
-
-
-
-
-
-
-
- True
-
-
-
-
-
-
-
\ No newline at end of file
+
+
+ Exe
+ net10.0
+ enable
+ enable
+ latest
+
+
+
+
+
+
diff --git a/AmalgamationTool/DynamORM.Amalgamation.cs b/AmalgamationTool/DynamORM.Amalgamation.cs
index bf9cdd8..e9ebcd5 100644
--- a/AmalgamationTool/DynamORM.Amalgamation.cs
+++ b/AmalgamationTool/DynamORM.Amalgamation.cs
@@ -3,6 +3,9 @@
* Copyright (c) 2012-2026, Grzegorz Russek (grzegorz.russek@gmail.com)
* All rights reserved.
*
+ * Some of methods in this code file is based on Kerosene ORM solution
+ * for parsing dynamic lambda expressions by Moisés Barba Cebeira
+ *
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
@@ -24,14 +27,7 @@
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
* THE POSSIBILITY OF SUCH DAMAGE.
- *
- * See: http://opensource.org/licenses/bsd-license.php
- *
- * Supported preprocessor flags:
- * * DYNAMORM_OMMIT_OLDSYNTAX - Remove dynamic table functionality
- * * DYNAMORM_OMMIT_GENERICEXECUTION - Remove generic execution functionality
- * * DYNAMORM_OMMIT_TRYPARSE - Remove TryParse helpers (also applies DYNAMORM_OMMIT_GENERICEXECUTION)
-*/
+ */
using DynamORM.Builders.Extensions;
using DynamORM.Builders.Implementation;
@@ -63,7 +59,5685 @@ using System;
namespace DynamORM
{
+ /// Cache data reader in memory.
+ public class DynamicCachedReader : DynamicObject, IDataReader
+ {
+ #region Constructor and Data
+ private class Data
+ {
+ internal DataTable _schema;
+ internal int _fields;
+ internal int _rows;
+ internal int _rowsAffected;
+ internal int _position = -1;
+ internal int _cachePos = -1;
+
+ internal IList _names;
+ internal IDictionary _ordinals;
+ internal IList _types;
+ internal IList