{"id":24540741,"url":"https://github.com/masu-baumgartner/dbsync.net","last_synced_at":"2026-05-13T23:31:53.382Z","repository":{"id":128803215,"uuid":"476701568","full_name":"Masu-Baumgartner/DBSync.Net","owner":"Masu-Baumgartner","description":"A c# mysql model sync library","archived":false,"fork":false,"pushed_at":"2022-04-16T02:39:24.000Z","size":33,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-01-14T07:38:02.418Z","etag":null,"topics":["cshap","data","library","mysql"],"latest_commit_sha":null,"homepage":"https://www.nuget.org/packages/DBSync.Net","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Masu-Baumgartner.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-04-01T11:56:59.000Z","updated_at":"2024-05-07T19:50:07.000Z","dependencies_parsed_at":"2023-07-10T08:00:17.753Z","dependency_job_id":null,"html_url":"https://github.com/Masu-Baumgartner/DBSync.Net","commit_stats":null,"previous_names":["marcel-baumgartner/dbsync.net"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/Masu-Baumgartner/DBSync.Net","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Masu-Baumgartner%2FDBSync.Net","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Masu-Baumgartner%2FDBSync.Net/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Masu-Baumgartner%2FDBSync.Net/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Masu-Baumgartner%2FDBSync.Net/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Masu-Baumgartner","download_url":"https://codeload.github.com/Masu-Baumgartner/DBSync.Net/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Masu-Baumgartner%2FDBSync.Net/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33004145,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"ssl_error","status_checked_at":"2026-05-13T13:14:51.610Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cshap","data","library","mysql"],"created_at":"2025-01-22T18:14:48.725Z","updated_at":"2026-05-13T23:31:53.365Z","avatar_url":"https://github.com/Masu-Baumgartner.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"## DBSync.Net ##\n### A c# library used to syncronice model lists with databases ###\n\n#### Note: ####\nThis library is still under development. If you use it for production you do this on your own risk\n\n#### Features: ####\n\n- One or more database server support\n- Optional encryption for important data\n- Only c# has to be used. No SQL needed\n- In-Memory cache\n- Threadsafe\n\n#### Future Features: ####\n\n- Store json objects\n- Encrypt json objects\n- Connection string builder\n\n#### Quick Start ####\n\n1) Create a model\n\n```csharp\npublic class TestyModel : IDBSyncModel\n{\n   [Key(\"id\")] // This is not optional\n   [PrimaryKey]\n   [AutoIncrement]\n   public int Id { get; set; }\n\n   [Key(\"text\")]\n   [Length(324)] // Custom max. length\n   public string Text1 { get; set; } // The property name must not be the key name\n\n   [Key(\"data\")]\n   [Encrypt] // This encrypts the value with the provided key which can be set in the table properties \n   public string Data { get; set; }\n}\n```\n\n2) Initialize table\n\n```csharp\nvar table = new DBSyncTable\u003cTestyModel\u003e(\"tablename\");\n\ntable.ConnectionString = new DBSyncConnectionString()\n{\n   // Set with properties here\n};\ntable.EncryptionKey = \"Optional, encryption key\";\n\ntable.Init(); // This creates the table in the db if its missing and loads data from it to the cache\n```\n\n3) Use it\n\nUse can use it basicly like any other IList object.\n\n```csharp\ntable.Add(new TestyModel()\n{\n   Text1 = \"Hmmmm\",\n   Data = \"Secret\"\n});\n\ntable.Clear();\n```\n\n#### Additional things: ####\n\nYou can configure a global connection string and encryption key which will be used if its not set before\n\n```csharp\nDBSyncGlobal.ConnectionString = \"This will be used on every table if its not set for this table specificly\";\nDBSyncGlobal.EncryptionKey = \"Same as above\";\n```\n\nExamples can be found in the test project\n\n#### Licensing: ####\nSee LICENSE file\n\n#### Contact: ####\n\n\nIf you have any questions feel free to ask me via:\n\n- Discord: masusniper#0001\n\n- Mail: admin@endelon-hosting.de\n\n- Mail: marcel.kbkm@gmail.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmasu-baumgartner%2Fdbsync.net","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmasu-baumgartner%2Fdbsync.net","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmasu-baumgartner%2Fdbsync.net/lists"}