2016-08-24 2 views
1

У меня возникла небольшая проблема с VSCode, создающим программу C# и структуру нескольких папок.Ссылка на несколько проектов VSCode

Например, у меня есть вызов папки SampleProject1 (я думаю, что проект папки, возможно, я ошибаюсь) в этой папке. У меня есть класс программы, у которого есть точка входа для моего тестового приложения, в основной метод программы class Я ссылаюсь на тестовый класс, который живет во втором вызове папки SampleProject2, но когда я запускаю программу, я получаю сообщение об ошибке, что мой тестовый класс не существует.

Вещи, которые я пробую, далеки.

  1. Я попытался добавить SampleProject2 в зависимость от project.json для SampleProject1, но это не сработало.
  2. Я запускаю пакет dotnet для SampleProject 2 и добавлен как зависимость от project.json для SampleProject1, а также сбой.
  3. Я также пытаюсь запустить «йо ASPNET» команду, чтобы создать csproj, но я думаю, что больше не действительна ссылка см here
  4. Я пошел VSCode GitHub и не нашел тест реального C# пример (странно)

project.json на SampleProject1

{ 
    "version": "1.0.0-*", 
    "buildOptions": { 
    "debugType": "portable", 
    "emitEntryPoint": true 
    }, 
    "dependencies": { 

    }, 
    "frameworks": { 
    "netcoreapp1.0": { 
     "dependencies": { 
     "Microsoft.NETCore.App": { 
      "type": "platform", 
      "version": "1.0.0" 
     } 
     }, 
     "imports": "dnxcore50" 
    } 
    } 
} 

Program.cs на SampleProject1

using System; 
using SampleProject2; 

namespace SampleProject1 
{ 
    public class Program 
    { 
     public static void Main(string[] args) 
     { 
      var test = new TestClass(); 
      Console.WriteLine("Hello World!"); 
     } 
    } 
} 

project.json на SampleProject2

{ 
    "version": "1.0.0-*", 
    "buildOptions": { 
    "debugType": "portable" 
    }, 
    "dependencies": {}, 
    "frameworks": { 
    "netcoreapp1.0": { 
     "dependencies": { 
     "Microsoft.NETCore.App": { 
      "type": "platform", 
      "version": "1.0.0" 
     } 
     }, 
     "imports": "dnxcore50" 
    } 
    } 
} 

TestClass.cs на SampleProject2

namespace SampleProject2 
{ 

    public class TestClass 
    { 
     public int Id { get; set; } 
    } 

} 

UPDATE: я смог скомпилировать приложение, установив папку в корневом каталоге проекта. Но я не получаю intelesense

VSCode Extructure enter image description here

Компиляция Ошибка команда Pront enter image description here

+0

проверка VS Code Multiple проектной документации http://stackoverflow.com/documentation/vscode/7717/multiple-projects-set-up#t=201611030739421019893 – Artru

ответ

0

Я не могу видеть ошибку с экрана, как его обрезано (вы можете скопировать и вставить ошибку, а не скриншот ?), но вы объявили TestClass(), но пытаетесь создать экземпляр TesClass(), так что это выглядит как простая опечатка для меня здесь ...

+0

не опечатка, пожалуйста, см обновление код –

1

Проекты C# еще не поддерживаются VSCode. См GitHub ответ here и проблема IntelliSense является ответ here

0

Чтобы построить решение с несколькими проектами добавить зависимость для внешней библиотеки внутри SampleProject1/project.json:

"dependencies": { 
    "SampleProject2": "1.0.0-*" 
    }, 

Тогда для того, чтобы IntelliSense использовать OmniSharp feature для переключения между несколькими проекты.

Поскольку SampleProject1 зависит от SamleProject2, лучшим способом является направить движок OnmiSharp на оба проекта (root). Нажмите Select project и выберите то, что лучше всего подходит вам.

enter image description here enter image description here

Смежные вопросы