Un marco para la construcción de API de REST JSON: API que utilizan .NET Core y Entity Framework Core. Incluye soporte para operaciones atómicas.

El objetivo final de esta biblioteca es eliminar la mayor cantidad de calderas posible ofreciendo características listas para usar, como clasificación, filtrado y paginación. Solo debe concentrarse en definir los recursos e implementar su lógica comercial personalizada. Esta biblioteca ha sido diseñada en torno a la inyección de dependencia, haciendo que la extensibilidad sea increíblemente fácil.
Estos son algunos pasos que puede tomar para ayudarlo a comprender qué es este proyecto y cómo puede usarlo:
Consulte el directorio de ejemplos para aplicaciones de muestra actualizadas. También hay una aplicación de Lista de TODO que incluye una API JSONAPIDOTNETCORE y un cliente de Emberjs.
Vea nuestra documentación para un uso detallado.
#nullable enable
[ Resource ]
public class Article : Identifiable < int >
{
[ Attr ]
public string Name { get ; set ; } = null ! ;
} // Program.cs
builder . Services . AddJsonApi < AppDbContext > ( ) ;
// ...
app . UseRouting ( ) ;
app . UseJsonApi ( ) ;
app . MapControllers ( ) ; El siguiente cuadro debe ayudarlo a elegir la mejor versión, según su entorno. Ver también nuestra política de versiones.
| Jsonapidotnetcore | Estado | .NETO | Núcleo de marco de entidad |
|---|---|---|---|
| 3.x | Estable | Core 2.x | 2.x |
| 4.x | Estable | Core 3.1 | 3.1, 5 |
| 5 | 5 | ||
| 6 | 5 | ||
| 5.0.0-5.0.2 | Estable | 6 | 6 |
| 5.0.3-5.4.0 | Estable | 6 | 6, 7 |
| 7 | 7 | ||
| 5.5+ | Estable | 6 | 6, 7 |
| 7 | 7 | ||
| 8 | 8, 9 | ||
| 9 | 9 | ||
| maestro | Avance | 8 | 8, 9 |
| 9 | 9 | ||
| Openapi | Experimental | 8 | 8, 9 |
| 9 | 9 |
¿Tiene una pregunta, encontró un error o desea enviar cambios en el código? Vea nuestras pautas contribuyentes.
Después de cada compromiso con la rama maestra, un nuevo paquete NUGET de prelanzamiento se publica automáticamente en los paquetes de GitHub. Para probarlo, siga los pasos a continuación:
Cree un token de acceso personal (clásico) con al menos read:packages .
Agregue nuestra fuente de paquete a su archivo nuget.config específico del usuario local ejecutando:
dotnet nuget add source https://nuget.pkg.github.com/json-api-dotnet/index.json --name github-json-api --username YOUR-GITHUB-USERNAME --password YOUR-PAT-CLASSICEn el comando anterior:
dotnet nuget remove source github-json-api y vuelva a intentar el interruptor --store-password-in-clear-text agregado.
Reinicie su IDE, abra su proyecto y navegue por la lista de paquetes de la alimentación GitHub-Json-API (asegúrese de que se incluyan paquetes de preliminación previos).
Para crear el código a partir de este repositorio localmente, ejecute:
dotnet buildEjecución de pruebas localmente requiere acceso a una base de datos PostgreSQL. Si tiene instalado Docker, esto se puede apoyar a través de:
pwsh run-docker-postgres.ps1Y luego ejecutar las pruebas:
dotnet testAlternativamente, para construir, ejecutar todas las pruebas, generar cobertura de código y paquetes Nuget:
pwsh Build.ps1