https://github.com/shuttle/shuttle.esb.sql.queue
Sql-based implementation of IQueue interface for use with Shuttle.Esb.
https://github.com/shuttle/shuttle.esb.sql.queue
Last synced: 9 months ago
JSON representation
Sql-based implementation of IQueue interface for use with Shuttle.Esb.
- Host: GitHub
- URL: https://github.com/shuttle/shuttle.esb.sql.queue
- Owner: Shuttle
- License: bsd-3-clause
- Created: 2017-03-12T08:53:19.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2025-03-02T14:11:28.000Z (10 months ago)
- Last Synced: 2025-03-23T22:14:32.486Z (10 months ago)
- Language: C#
- Homepage:
- Size: 136 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SQL
```
PM> Install-Package Shuttle.Esb.Sql.Queue
```
Sql RDBMS implementation of the `IQueue` interface for use with Shuttle.Esb which creates a table for each required queue.
## Supported providers
Currently only the `Microsoft.Data.SqlClient` provider is supported but this can be extended. You are welcome to create an issue and assistance will be provided where able; else a pull request would be most welcome.
## Configuration
TThe URI structure is `sql://configuration-name/queue-name`.
```c#
services.AddDataAccess(builder =>
{
builder.AddConnectionString("shuttle", "Microsoft.Data.SqlClient", "server=.;database=shuttle;user id=sa;password=Pass!000");
});
services.AddSqlQueue(builder =>
{
builder.AddOptions("shuttle", new SqlQueueOptions
{
ConnectionStringName = "shuttle"
});
});
```
The default JSON settings structure is as follows:
```json
{
"Shuttle": {
"SqlQueue": {
"ConnectionStringName": "connection-string-name"
}
}
}
```
## Options
| Option | Default | Description |
| --- | --- | --- |
| `ConnectionStringName` | | The name of the connection string to use. This package makes use of [Shuttle.Core.Data](https://shuttle.github.io/shuttle-core/data/shuttle-core-data.html) for data access. |