You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
-[ ] C#/Blazor side controlled database migrations.
11
+
-[ ] Deferred execution of table joins. I want c# join abilities to properly join tables together. This will likely be an emulated strategy in C# due to IndexDB being a non relational database without true capabilities to achieve this.
8
12
-[ ] Reset Primary Key starting Id
9
13
-[ ] Compound Key Indexing
14
+
-[ ]`Select(x => x.Name)` based query statements. Utilizing Cursors to emulate effecient LINQ based Select statements to grab only desired columns.
15
+
16
+
#### Completed:
10
17
-[X] Allow Any and/or All Linq statements inside the WHERE query
11
18
-[X] Handling of Nested OR conditions in where query
12
19
-[X] API like response protocal from JS. This will allow better debugging and make it easier to expand the code. I left the original weak reference system build by nwestfall, but I will be removing that code for a system I believe is easier to tame and more appropriate for the project goals.
13
-
-[ ] Superior & easy version handling and table altering. Current form handles changes easily but it'd take some work to do serious data migrations. I want data migrations to be built in c#, translated to clients, and automatically handled with extreme ease. I have some really interesting protocals I've brainstormed and would like to experiment with.
14
-
-[ ] Deferred execution of table joins. I want c# join abilities to properly join tables together.
15
-
-[X]**Completely custom serializer implmented. This isn't just system reflections, this is as fast as you get.**~~Superior reflections. The current version of reflections is fine, but I've not spent much time optimizing. I need to convert more into hash sets, dictionaries, and more. This wrapper is meant to be a very expandable version that will engulf indexedDb with a great deal of capabilities. Fine tuning and perfecting the protocal I'm working on will allow some very cool features in the future.~~
20
+
-[X]**Completely custom serializer implmented. This isn't just system reflections, this is as fast as you get.**
16
21
-[X]**Long Term** - NET 8 provides AOT features that I think could be extremely abusive in a good way for this project. I believe with future NET 8 possibilites and AOT, I can move IndexedDB into being a multi thread monster and various other performance improvements. Obviously I'd make this optional. But I believe there's some very interesting possibilities I'd like to experiment with in the future.
17
22
18
23
## Table of Contents
@@ -133,9 +138,10 @@ This documentation explains the various query capabilities available in the `Whe
133
138
|`OrderByDescending(Expression<Func<T, object>> predicate)`| Orders the query result by the specified predicate in descending order. |
134
139
|`Count()`| Get the number of items in the collection. |
135
140
|`ToListAsync()`| Executes the MagicQuery and returns the results as `List<T>`. |
141
+
|`AsAsyncEnumerable()`| Executes the `MagicQuery` and returns results as `IAsyncEnumerable<T>`. |
136
142
|`{NOT YET SUPPORTED} AsEnumerable()`| (**FUTURE FEATURE**) Executes the MagicQuery and returns the results as `IEnumerable<T>`. |
137
143
|`{NOT YET SUPPORTED} ToList()`| (**FUTURE FEATURE**) Executes the MagicQuery and returns the results as `List<T>`. |
138
-
|`AsEnumerableAsync()`| Executes the MagicQuery and returns the results as `IEnumerable<T>`. |
144
+
139
145
140
146
141
147
These MagicQuery methods allow you to build complex queries similar to standard LINQ in C#. Remember to call the `ToListAsync` or the `AsEnumerableAsync` method at the end of your MagicQuery to execute the query and retrieve the full results.
0 commit comments