Hello everyone @/all
I'm new to whole this, so plz correct me if I'm wrong:
1- A poco class when inserts into DB known as a Document;
2- If a poco class contains an object property of another poco class, this is a SubDocument;
$ symbol refers to the main poco class/Document when used in LINQ-expressions?
2- Whats different between
SELECT $ from students and
SELECT * from students (Basically
3- Whats is and the difference between Collection and Document ?
tnx in advance; Couldnt find out through docs...
System.Exception: LiteDB ENSURE: ReadFull must read PAGE_SIZE bytes  at LiteDB.Constants.ENSURE(Boolean conditional, String message) at LiteDB.Engine.DiskService.ReadFull(FileOrigin origin)+MoveNext() at LiteDB.Engine.WalIndexService.<>c__DisplayClass19_0.<<CheckpointInternal>g__source|0>d.MoveNext() at LiteDB.Engine.DiskService.Write(IEnumerable`1 pages, FileOrigin origin) at LiteDB.Engine.WalIndexService.CheckpointInternal() at LiteDB.Engine.WalIndexService.TryCheckpoint() at LiteDB.Engine.LiteEngine.Dispose(Boolean disposing) at LiteDB.Engine.LiteEngine..ctor(EngineSettings settings)
I am looking at integrating this with an existing project, so we already have data models etc but we already have a
Id field, is there a way to hint/tell Lite DB to just use that field to be the id .
Not fussed if it duplicates the custom
_id or some other mechanism, I just need to be able to query on the
Guid not the
BsonValue based Id, although I appreciate I may externally use a
Guid in my data access layer but internally it may have to just make a
BsonValue on the fly or something...
Anyway any advice on this would be great as I assume its a common use case, just couildnt find much in the docs around it
Also I have a query around dynamic style types, i.e I have a class with an interface property so when deserializing its not clear what C# type it is.
When I was using JSON.Net I had a custom
JsonConverter which handled that part, but im not entirely sure here how to mimic that with LiteDB, historically all the data used to be pumped out to raw json files using JSON.Net so generally it seems a good fit for just moving each json file to be its own collection, but not quite sure how to work around that bit
Dim Result = m_Col.Find(Function(x) x.Name.StartsWith("F")).ToList
--> If an entry starting with "F" is found, I get this exception:
System.NullReferenceException: "The object reference was not set to an object instance.
--> If no entry starting with "F" is found, I get an empty list "Result" (LiteDB.LiteCollection(Of T)
Where is my problem? Thanks for quick help!
query.Where($"Name = @p0", "Arthur");, but it doesn't work. The parameter doesn't seem to be used.
query.Where(x => x.Name == "Arthur");
Yooo, we're using LiteDB for a long-running Windows Service and having a couple of issues. It seems sometimes our customers won't clean-shutdown their stuff which isn't really avoidable... we've had someone end up with a full drive so the log wasn't committing I guess, but they get this on restarting our service now (we run Rebuild to check for ENSURE errors, as we had someone stuff without the ability to run our application for no reason before as Inserts would fail... so if Rebuild fails we pull our data out and remake the DB entirely)
Rebuild operation requires no log file - run Checkpoint before continue
I've got a copy of their DB, but even running Checkpoint before Rebuild doesn't seem to actually achieve anything here? It still shows that error