vscode
Múltiples proyectos establecidos.
Buscar..
Observaciones
Las pruebas unitarias del proyecto configuradas actualmente se pueden encontrar aquí.
Referencia a proyectos locales.
No hay cosas como los archivos .sln y .proj .
En lugar de ellos, las carpetas se utilizan en Visual Studio Code.
Cada carpeta de proyecto debe tener un archivo project.json separado.
/MyProject.Core
SourceFile.cs
project.json
/MyProject.Web
/Controllers
/Views
project.json
Para hacer referencia a MyProject.Core desde el proyecto MyProject.Web , edite el archivo MyProject.Web\project.json y agregue la dependencia:
// MyProject.Web/project.json
{
"dependencies": {
"MyProject.Core": {"target": "project"},
...
}
"buildOptions": {
"emitEntryPoint": true
}
}
La línea "emitEntryPoint": true dice que MyProject.Web es un proyecto de inicio para la solución. MyProject.Core debe tener este indicador deshabilitado en su archivo project.json :
// MyProject.Core/project.json
{
...
"buildOptions": {
"emitEntryPoint": false
}
}
Cree el proyecto (Mac: ⌘ + Shift + B , Windows: Ctrl + Shift + B ) y cada proyecto debe tener sus propias carpetas \bin y \obj con nuevos archivos .dll .
Estructura de la solución
Es muy común agrupar proyectos, por ejemplo, colocar proyectos de prueba en la carpeta /test y proyectos de origen en la carpeta /src . Agregue el archivo global.json y haga una estructura similar:
global.json
/src/
/MyProject.Core/
SourceFile.cs
project.json
/MyProject.Web/
/Controllers
/Views
project.json
/test/
/MyProject.Core.UnitTests/
SourceFileTest.cs
project.json
/MyProject.Web.UnitTests/
/Controllers
/Views
project.json
Edite el archivo global.json vacío y especifique los grupos de proyectos:
{
"projects":["src", "test"]
}
VS Code usa tasks.json para ejecutar tareas (por ejemplo, construir una solución) y launch.json para iniciar un proyecto (por ejemplo, depurar). Si no puede encontrar estos archivos, intente iniciar la depuración presionando F5 e ignore los errores, VS Code generará en la carpeta raíz .vscode carpeta con los archivos.
Edite el archivo launch.json y especifique la ruta a su biblioteca de inicio, cambie MyProject.Web con el nombre de su proyecto:
{
"configurations": [
{
...
"program": "${workspaceRoot}/src/MyProject.Web/bin/Debug/netcoreapp1.0/MyProject.Web.dll",
"args": [],
"cwd": "${workspaceRoot}/src/Washita.Web",
...
}
}
Edite el archivo tasks.json y especifique la ruta a su biblioteca de inicio, cambie MyProject.Web con el nombre de su proyecto:
{
"tasks": [
{
"taskName": "build",
"args": [
"${workspaceRoot}/src/MyProject.Web"
],
"isBuildCommand": true,
"problemMatcher": "$msCompile"
}
]
}
Ahora debería poder construir y depurar archivos de origen .NET.
Sin embargo, Intellisense desaparecerá debido a la configuración de múltiples proyectos. Para solucionarlo, abra cualquier archivo .cs y cambie al proyecto apropiado (project.json) Select project en la esquina inferior derecha:

