2016-08-24 146 views
1

我有一點VSCode創建C#程序和多個文件夾結構的問題。VSCode多個項目參考

例如,我有一個文件夾調用SampleProject1(我認爲文件夾項目也許我錯了)在這個文件夾中我有我的程序類,有我的測試應用程序的入口點,在本程序的主要方法類我引用了一個Test類,它存在於第二個文件夾中調用SampleProject2,但是當我運行該程序時,出現一個錯誤,表明我的測試類不存在。

我試過的東西做的很遠。

  1. 我試圖添加SampleProject2作爲SampleProject1的project.json的依賴項,但沒有奏效。
  2. 我爲SampleProject 2運行dotnet包並作爲SampleProject1的project.json的依賴項添加,並且也失敗。
  3. 我也嘗試運行「喲ASPNET」命令創建的csproj但我覺得不再有效見鏈接here
  4. 我去VSCode Github上並沒有找到一個測試真正的C#示例(怪異)
在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

project.json上SampleProject1

using System; 
using SampleProject2; 

namespace SampleProject1 
{ 
    public class Program 
    { 
     public static void Main(string[] args) 
     { 
      var test = new TestClass(); 
      Console.WriteLine("Hello World!"); 
     } 
    } 
} 
在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 0

project.json上SampleProject2

namespace SampleProject2 
{ 

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

} 

更新: 我能夠通過設置在項目的根文件夾來編譯應用程序。但我不明白intelesense

VSCode Extructure enter image description here

編譯錯誤命令Pront enter image description here

+0

檢查VS代碼的多個項目文檔http://stackoverflow.com/documentation/vscode/7717/multiple-projects-set-up#t=201611030739421019893 – Artru

回答

0

我不能看到從截圖誤差作爲其截斷(您可以複製並粘貼錯誤,而不是它的屏幕截圖?),但你已經聲明TestClass(),但正試圖例化TesClass(),所以它在這裏看起來像一個簡單的錯字...

+0

是不是筆誤,請參閱更新碼 –

1

VSCode尚不支持C#項目。見GitHub的響應here和智能感知問題回答here

0

要構建的解決方案有多個項目添加一個依賴於外部庫裏面SampleProject1/project.json

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

然後啓用智能感知使用OmniSharp feature多間切換項目。

由於SampleProject1依賴於SamleProject2,所以最好的方法是在兩個項目(root)上指定OnmiSharp引擎。點擊Select project,然後選擇最適合您的設備。

enter image description here enter image description here