Comments (7)
Is this valuable? Most of the time, I would think you would be using the same data context when doing a unit of work, which means if you query twice, the entities have the same reference. Having the same reference means it is pointless to return what is truly in the data storage.
The only thing I can think of is for verification purposes for unit testing to see what the actual values are in the data storage.
Am I missing something here?
from highway.data.
The wording is a bit odd, but what we want is to provide the same commit/rollback behavior of a RDBMS backed repository.
- If I make a bunch of object changes without a commit when I query again those changes are not there.
- If I add/remove an object, those changes do not change the asqueryable result until a commit is called.
Something like that.
from highway.data.
Let me try again.
I don't think your first point can happen. I was uncertain so I tested it. The test I did was...query for an object, modify without committing, do that same query. The object from the 2nd query is the same object (same reference) so it has my modifications that I did from the first query.
My previous pull request covered your 2nd point. I can send you another pull request with some updates if you want this still. I haven't pushed it from my local yet.
from highway.data.
I was thinking serialize the storage, and on query return the deserialized objects. Then on commit update the serialized version. Thoughts?
Sent from my Windows Phone
From: Long Maimailto:[email protected]
Sent: 4/6/2014 8:35 PM
To: HighwayFramework/Highway.Datamailto:[email protected]
Cc: Devlin Lilesmailto:[email protected]
Subject: Re: [Highway.Data] InMemoryDataContext should honor the Unit of Work and Commit design (#57)
Let me try again.
I don't think your first point can happen. I was uncertain so I tested it. The test I did was...query for an object, modify without committing, do that same query. The object from the 2nd query is the same object (same reference) so it has my modifications that I did from the first query.
My previous pull request covered your 2nd point.
Reply to this email directly or view it on GitHub:
#57 (comment)
from highway.data.
I think I know where the miscommunication is.
When I said "I don't think your first point can happen", I was talking about EF usage, not my implementation of InMemoryDataContext to get your first point to work. So what I was testing was how EF works, or at least EF w/ Highway.Data. If the scenario doesn't exist in actual EF w/ Highway.Data, then there isn't a point to do that. Can you reread last few comments with this thought in mind. I assume I cleared up the miscommunication.
Thanks!
from highway.data.
Close as this is implemented through InMemoryActiveDataContext?
from highway.data.
Implemented via the InMemoryActiveDataContext
from highway.data.
Related Issues (20)
- Split H.D.EF into a new Repository HOT 1
- Deep Support for ReadOnly HOT 5
- InMemoryDataContext Increments IDs across instances. HOT 1
- Master branch will not build HOT 2
- Use of UpdateGraphs extension method HOT 1
- Is this project active? HOT 3
- DefaultContextConfiguration should have overrideable ConfigureContext method
- TypeInitializationException HOT 1
- Highway.Config
- Latest version of Highway.Data not supported in .Net 4.6.2 projects HOT 3
- 'IUnitOfWork' does not contain a definition for 'AsQueryable' HOT 4
- Latest Update Breaks Queries HOT 6
- Before/After Scalar/Command are missing context HOT 2
- Concat for specification HOT 4
- Handling Output Parameters From A Stored Procedure HOT 2
- Support for Azure HOT 1
- Query Execution against InMemoryDataContext to support DbFunctions
- Entity Framework 7 Support HOT 1
- Add IsDirty to IDataContext
- Edit Support CoreCLR and EF Core HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from highway.data.