Coder Social home page Coder Social logo

Comments (7)

crhairr avatar crhairr commented on June 14, 2024

It would appear that I never updated UpdateOneModelFactory after the implementation of complex types. The result is that the method that builds property update definitions does not list any sub-document changes.

I'm putting in a change to build out those navigations, as well as to ensure that updates to non-owned/complex-type navigations (ie: the foreign key id) are also updated if a relationship changes.

These changes will hopefully also allow for push/pull of collections items.

from entityframeworkcore.

crhairr avatar crhairr commented on June 14, 2024

I have a partial fix for this. I had to add a bunch of query tracking logic to attach the full graph, including "owned" child documents, to the state manager. Now it can actually see all of the modified sub-documents. I'm going to work tonight on making the actual update logic a little bit more robust: currently, it creates an update graph that spans the document from the root to each updated leaf node. I'd like to make that a little bit more concise and correctly use the update definitions to partially update sub-document children, and remove/add collection elements using MongoDb's syntax.

from entityframeworkcore.

crhairr avatar crhairr commented on June 14, 2024

I apologize for how long this particular issue has taken. I started trying to fix this the cheap way, and then decided to do it the right way and ended up effectively re-writing the entire metadata system, half the MongoDB Linq adapter, most of the document conventions, and a bunch of other small issues. I don't get a lot of time to work on the provider, so it's taken me a month and a half of a couple of hours here and there.

I have a branch with the current set of changes. I need to tweak a few more things to get the Identity tests to pass, but this issue is almost fixed. Please bear with me a little longer.

from entityframeworkcore.

crhairr avatar crhairr commented on June 14, 2024

I finally just got the last bit of this done. This reflects an effectively complete overhaul of the provider for the nearly sole purpose of tracking subdocument modifications.

from entityframeworkcore.

SarcoZ avatar SarcoZ commented on June 14, 2024

@crhairr Good,T will try later

from entityframeworkcore.

maulikdoshi82 avatar maulikdoshi82 commented on June 14, 2024

Does that mean framework can go on release instead of pre-release?

from entityframeworkcore.

crhairr avatar crhairr commented on June 14, 2024

Unfortunately not.

EFCore 3.0 fixes a lot of the underlying issues preventing toss MongoDB provider from being production worthy. I was working on that update when my wife's health developed some complications. We are now in the middle of a cross-country move to address that, and this project has taken a bit of a backseat.

I would be happy to review and accept pull requests when things start to settle back down.

from entityframeworkcore.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.