Ross ROSS = Recommend OSS · open-source software intelligence for agents

dotnetcore/SmartSql

SmartSql = MyBatis in C# + .NET Core+ Cache(Memory | Redis) + R/W Splitting + PropertyChangedTrack +Dynamic Repository + InvokeSync + Diagnostics observed · 2026-08-28

github.com/dotnetcore/SmartSql · homepage · C# · Apache-2.0 (permissive) observed · 2026-08-28

Health v2 · maintenance only

86/100

  • Activity 99
  • Release rhythm 60
  • Longevity 100
How is this computed?

round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.

  • gap_med: 156
  • age_days: 3441
  • days_rel: 111
  • days_push: 8
  • n_releases_24m: 2

Full methodology

Adoption not part of the score

1131 stars · 229 forks observed · 2026-08-28

What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded

SmartSql is a MyBatis-inspired ORM for .NET that manages SQL in XML files with dynamic conditional tags, giving developers full control over generated SQL. It bundles caching (memory and Redis), read/write splitting with load balancing, IL-emit dynamic repositories, and diagnostics for APM integration.

Use cases

  • manage SQL statements in XML instead of inline strings or LINQ
  • write hand-tuned SQL with conditional tags instead of ORM-generated queries
  • split reads and writes across database replicas with weighted load balancing
  • cache query results in memory or Redis with automatic invalidation
  • auto-implement repository interfaces from SQL statement naming conventions
  • monitor SQL execution with DiagnosticSource and SkyWalking integration
  • generate partial UPDATE statements that only modify changed properties

When to choose

  • you want MyBatis-style XML-managed SQL in a .NET application
  • you need absolute control over SQL for performance-critical complex queries
  • you want built-in read/write splitting and distributed caching without extra libraries
  • you prefer convention-based repositories with minimal boilerplate

When to avoid

  • you prefer LINQ-based ORMs like Entity Framework for code-first modeling
  • you want a lightweight micro-ORM like Dapper without XML configuration
  • your team dislikes maintaining SQL in XML files

Facets

library · maturity active

orm caching database monitoring serialization databases backend web-development developer-tools microservices dotnet cross-platform windows mybatis-inspired xml-sql-management read-write-splitting dynamic-repository redis-cache sql-mapper diagnostics apm-integration linux macos

3 sources

Member repositories

RepositoryRoleHealth v2
dotnetcore/SmartSqlmain86

For agents

markdown · JSON · MCP: product_card(name="dotnetcore/SmartSql")

Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem