Skip to content

cgonzalezvera/StockQuoteSystem-orleans-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

StockQuoteSystem

Crear Estructura Base

# Crear directorio raíz del proyecto
mkdir StockQuoteSystem
cd StockQuoteSystem

# Crear directorio src
mkdir src
cd src

# Crear solution file en el directorio raíz
cd ..
dotnet new sln --name StockQuoteSystem

Crear Proyecto de Interfaces

# Navegar a src y crear proyecto de interfaces
cd src
dotnet new classlib --name StockQuoteSystem.Interfaces --framework net8.0

# Agregar paquetes NuGet necesarios
cd StockQuoteSystem.Interfaces
dotnet add package Microsoft.Orleans.Core.Abstractions --version 8.0.0
dotnet add package Microsoft.Orleans.Serialization.Abstractions --version 8.0.0

# Volver al directorio raíz y agregar al solution
cd ../..
dotnet sln add src/StockQuoteSystem.Interfaces/StockQuoteSystem.Interfaces.csproj

Crear Proyecto de Grains

# Crear proyecto de grains
cd src
dotnet new classlib --name StockQuoteSystem.Grains --framework net8.0

# Agregar paquetes NuGet
cd StockQuoteSystem.Grains
dotnet add package Microsoft.Orleans.Sdk --version 8.0.0
dotnet add package Microsoft.Orleans.Persistence.AdoNet --version 8.0.0

# Agregar referencia al proyecto de interfaces
dotnet add reference ../StockQuoteSystem.Interfaces/StockQuoteSystem.Interfaces.csproj

# Volver al directorio raíz y agregar al solution
cd ../..
dotnet sln add src/StockQuoteSystem.Grains/StockQuoteSystem.Grains.csproj

Crear Proyecto Host (Web API + Silo)

# Crear proyecto web API
cd src
dotnet new webapi --name StockQuoteSystem.Host --framework net8.0

# Agregar paquetes NuGet de Orleans
cd StockQuoteSystem.Host
dotnet add package Microsoft.Orleans.Sdk --version 8.0.0
dotnet add package Microsoft.Orleans.Clustering.AdoNet --version 8.0.0
dotnet add package Microsoft.Orleans.Persistence.AdoNet --version 8.0.0
dotnet add package OrleansDashboard --version 8.0.0
dotnet add package System.Data.SqlClient --version 4.8.5

# Agregar paquetes adicionales para Web API
dotnet add package Microsoft.AspNetCore.OpenApi --version 8.0.0
dotnet add package Swashbuckle.AspNetCore --version 6.4.0

# Agregar referencias a otros proyectos
dotnet add reference ../StockQuoteSystem.Interfaces/StockQuoteSystem.Interfaces.csproj
dotnet add reference ../StockQuoteSystem.Grains/StockQuoteSystem.Grains.csproj

# Volver al directorio raíz y agregar al solution
cd ../..
dotnet sln add src/StockQuoteSystem.Host/StockQuoteSystem.Host.csproj

Crear Proyecto Cliente

# Crear proyecto de consola
cd src
dotnet new console --name StockQuoteSystem.Client --framework net8.0

# Agregar paquetes NuGet para Orleans Client
cd StockQuoteSystem.Client
dotnet add package Microsoft.Extensions.Hosting --version 8.0.0
dotnet add package Microsoft.Orleans.Client --version 8.0.0
dotnet add package Microsoft.Orleans.Clustering.AdoNet --version 8.0.0
dotnet add package System.Data.SqlClient --version 4.8.5

# Agregar referencia al proyecto de interfaces
dotnet add reference ../StockQuoteSystem.Interfaces/StockQuoteSystem.Interfaces.csproj

# Volver al directorio raíz y agregar al solution
cd ../..
dotnet sln add src/StockQuoteSystem.Client/StockQuoteSystem.Client.csproj

Crear Directorios Adicionales

# Crear directorios para organizar el código dentro de cada proyecto

# En Interfaces - crear directorio Models
mkdir src/StockQuoteSystem.Interfaces/Models

# En Grains - crear directorio Services
mkdir src/StockQuoteSystem.Grains/Services

# En Host - crear directorios Controllers
mkdir src/StockQuoteSystem.Host/Controllers

# En Client - crear directorio Services
mkdir src/StockQuoteSystem.Client/Services

Verificar Estructura del Proyecto

# Verificar que todos los proyectos están en el solution
dotnet sln list

# Verificar que se puede compilar todo
dotnet build

# Verificar estructura de directorios
tree . # En Windows usar: dir /s

Comandos de Verificación

# Verificar dependencias del solution
dotnet list package

# Verificar referencias entre proyectos
dotnet list src/StockQuoteSystem.Grains reference
dotnet list src/StockQuoteSystem.Host reference
dotnet list src/StockQuoteSystem.Client reference

# Compilar proyecto específico
dotnet build src/StockQuoteSystem.Host

# Ejecutar proyecto específico
dotnet run --project src/StockQuoteSystem.Host
dotnet run --project src/StockQuoteSystem.Client

About

Una implementación basica de prueba usando orleans

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages