Szukaj…


Uwagi

Aktualnie konfigurowany projekt testów jednostkowych można znaleźć tutaj

Odwoływanie się do lokalnych projektów

Nie ma takiej rzeczy jak .sln i .proj plików.
Zamiast nich w programie Visual Studio Code używane są foldery .
Każdy folder projektu powinien mieć osobny plik project.json .

/MyProject.Core
   SourceFile.cs
   project.json

/MyProject.Web
   /Controllers
   /Views
   project.json

Aby odwoływać się do MyProject.Core z projektu MyProject.Web , edytuj plik MyProject.Web\project.json i dodaj zależność:

// MyProject.Web/project.json
{
   "dependencies": {
      "MyProject.Core": {"target": "project"},
    ...
   }
   "buildOptions": {
      "emitEntryPoint": true 
   }
}

Wiersz "emitEntryPoint": true mówi, że MyProject.Web to projekt początkowy dla rozwiązania. MyProject.Core powinien mieć tę flagę wyłączoną w pliku project.json :

 // MyProject.Core/project.json
 {
   ...
   "buildOptions": {
      "emitEntryPoint": false 
   }
}

Zbuduj projekt (Mac: + Shift + B , Windows: Ctrl + Shift + B ), a każdy projekt powinien mieć własne foldery \bin i \obj z nowymi plikami .dll .

Struktura rozwiązania

Bardzo często grupuje się projekty, na przykład umieszcza projekty /test folderze /test a projekty źródłowe w folderze /src . Dodaj plik global.json i utwórz podobną strukturę:

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

Edytuj pusty plik global.json i określ grupy projektów:

{
    "projects":["src", "test"]
}

VS Code używa tasks.json do uruchamiania zadań (np. Budowanie rozwiązania) i launch.json do uruchamiania projektu (np. Debugowanie). Jeśli nie możesz znaleźć tych plików, spróbuj rozpocząć debugowanie, naciskając klawisz F5 i zignoruj błędy, kod VS wygeneruje w folderze głównym .vscode z plikami.

wprowadź opis zdjęcia tutaj

Edytuj plik launch.json i określ ścieżkę do biblioteki uruchamiania, zmień MyProject.Web przy użyciu nazwy projektu:

{
    "configurations": [
    {
        ...
        "program": "${workspaceRoot}/src/MyProject.Web/bin/Debug/netcoreapp1.0/MyProject.Web.dll",
        "args": [],
        "cwd": "${workspaceRoot}/src/Washita.Web", 
        ...
   }
}

Edytuj plik tasks.json i określ ścieżkę do biblioteki uruchamiania, zmień MyProject.Web przy użyciu nazwy projektu:

{
    "tasks": [
        {
        "taskName": "build",
            "args": [
                "${workspaceRoot}/src/MyProject.Web"
           ],
           "isBuildCommand": true,
           "problemMatcher": "$msCompile"
       }
   ]
}

Teraz powinieneś być w stanie budować i debugować pliki źródłowe .NET.

Jednak Intellisense zniknie z powodu konfiguracji wielu projektów. Aby to naprawić, otwórz dowolny plik .cs i przejdź do odpowiedniego projektu (project.json), wybierając Select project w prawym dolnym rogu:

wprowadź opis zdjęcia tutaj



Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow