This library is still under development. If you use it for production you do this on your own risk
- One or more database server support
- Optional encryption for important data
- Only c# has to be used. No SQL needed
- In-Memory cache
- Threadsafe
- Store json objects
- Encrypt json objects
- Connection string builder
- Create a model
public class TestyModel : IDBSyncModel
{
[Key("id")] // This is not optional
[PrimaryKey]
[AutoIncrement]
public int Id { get; set; }
[Key("text")]
[Length(324)] // Custom max. length
public string Text1 { get; set; } // The property name must not be the key name
[Key("data")]
[Encrypt] // This encrypts the value with the provided key which can be set in the table properties
public string Data { get; set; }
}
- Initialize table
var table = new DBSyncTable<TestyModel>("tablename");
table.ConnectionString = new DBSyncConnectionString()
{
// Set with properties here
};
table.EncryptionKey = "Optional, encryption key";
table.Init(); // This creates the table in the db if its missing and loads data from it to the cache
- Use it
Use can use it basicly like any other IList object.
table.Add(new TestyModel()
{
Text1 = "Hmmmm",
Data = "Secret"
});
table.Clear();
You can configure a global connection string and encryption key which will be used if its not set before
DBSyncGlobal.ConnectionString = "This will be used on every table if its not set for this table specificly";
DBSyncGlobal.EncryptionKey = "Same as above";
Examples can be found in the test project
See LICENSE file
If you have any questions feel free to ask me via:
-
Discord: masusniper#0001
-
Mail: [email protected]
-
Mail: [email protected]