Comments (9)
Can you please show me how you are using this? I'm currently using it like this in production.
from npoco.
You just have to create a connection, begin a transaction with this connection, create a npoco database passing the previously created connection in constructor and then trying to call the fetch method of npoco database.
from npoco.
Hey, There is a work around, but only if you let NPoco create the transaction. If you need the transaction to be created outside NPoco then I'm proposing the following API. What do you think?
// Should be able to do this
using (var conn = new SqlConnection("connstring"))
{
conn.Open();
IDatabase db = new Database(conn);
db.BeginTransaction();
var results = db.Execute("insert into abc(name) select 'wow'");
db.CompleteTransaction();
}
// Otherwise here is what I'm thinking
using (var conn = new SqlConnection("connstring"))
{
conn.Open();
var tran = conn.BeginTransaction();
IDatabase db = new Database(conn);
db.SetTransaction(tran);
db.Execute("insert into abc(name) select 'wow'");
//tran.Commit() or ....
//db.CompleteTransaction(); can commit here if needed
}
from npoco.
Wow Adam, thank you very much for your support! I think the second solution looks like much more flexible because the database object are in an object that is created after the transaction created but your first solution should also be implemented if it's not the case. Thank you again for your great product.
from npoco.
The first solution is what it does now. Will get a new release out this weekend some time. Will be 1.0.3.
from npoco.
1.0.3 is out on NuGet. Can you please have a look and let me know.
from npoco.
Thank you, i will look this night ;)
from npoco.
I updated to the newest version and it work perfectly.
This is what I do with my own "session" object.
public System.Collections.Generic.List<Table> GetTables(Data.Sessions.Session session)
{
Database database = new Database(session.Connection.InternalConnection);
if (session.Connection.Transaction != null)
database.SetTransaction(session.Connection.Transaction);
return database.Query<Table>(
"SELECT Name, SCHEMA_NAME(schema_id) AS SchemaName " +
"FROM sys.tables " +
"WHERE name <> 'dtproperties' " +
"ORDER BY schemaName, name").ToList();
}
from npoco.
Excellent. Thanks for the feedback.
from npoco.
Related Issues (20)
- No Tracking for Inserts HOT 1
- strongly typing IDs using implicit operator?
- One To Many References not working HOT 1
- Parameters are not working HOT 5
- InsertBulkAsync<T> fails with error: Cannot change DataType of a column once it has data. HOT 1
- new questions regarding multi-tenant apps
- Dependency injection example for context HOT 1
- SqliteConnection misdetected as SqlServerConnection HOT 1
- SQLite Insert Error : SQL logic error unrecognized token: @
- Hint() with PostgreSQL
- More than 4 Multiple Result Sets Mapping - 2
- Foreign key example using fluent mapping HOT 1
- Repository-wide license? HOT 1
- Why isn't DBConcurrencyException sent to IExceptionInterceptor?" HOT 1
- NullReferenceException / InvalidOperationException on multiple calls to Async Db method HOT 2
- Map string to json/jsonb field with PostgreSQL HOT 1
- Is version column in Sql Server supposed to be populated after an update?
- IMapper.GetParameterConverter sourceType parameter Is a different type between Insert and Update HOT 1
- NPOCO Does not map Composite Primary Key HOT 1
- culture bug??
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 npoco.