使用Visual Studio Code(VS Code)开发调试.NET Core和ASP.NET Core 多项目multiple project。

之前讲解过如果使用Visual Studio Code(VS Code) 开发单个.NET Core和ASP.NET Core项目,大家也都知道如何开发。

多项目可能有些人还不大了解,今天给大家介绍一下。

本文将介绍如何开发调试多项目,及项目的引用,以及多项目的切换。

环境安装

本文开发环境:

WIN10 x64

Visual Studio Code 1.4.0

C# 插件 1.3.0

.NET Core SDK Installer:

https://download.microsoft.com/download/A/3/8/A38489F3-9777-41DD-83F8-2CBDFAB2520C/packages/DotNetCore.1.0.0-SDK.Preview2-x64.exe

SDK 如果安装过 RC2及之前版本,请先卸载然后再安装。

更多系统版本下载:

https://www.microsoft.com/net/download

VS Code :

https://code.visualstudio.com/

VS Code C#插件:

点击控制面板左侧扩展,然后搜索C# 安装即可。

安装好插件以后重启VS Code。

环境安装好了,就可以正式开始了。

创建多项目

创建项目采用dotnet new 命令,更多dotnet 命令使用,可以参考: http://www.cnblogs.com/linezero/p/dotnet.html

这里我先创建一个名为:dotnet 的根目录。

然后依次创建 multiapp  multiapplib multiappweb。

所有命令如下:

mkdir dotnet
cd dotnet mkdir multiapp
mkdir multiapplib
mkdir multiappweb cd multiapp
dotnet new
cd .. cd multiapplib
dotnet new -t lib
cd .. cd multiappweb
dotnet new -t web

所有命令执行完以后,得到如下目录。

VS Code 开发调试

下面我们就使用VS Code 打开文件夹 dotnet 。注意:这里打开的文件夹是 dotnet

打开文件夹我们打开multiapp 的Program.cs。

然后 注意右下角 Running ,这里我们点击选择multiapp

会提示是否创建文件及还原,这里我们选择Yes和Restore。

下面我们来添加项目引用。打开multiapp 的project.json ,添加如下引用:

{
"version": "1.0.0-*",
"buildOptions": {
"debugType": "portable",
"emitEntryPoint": true
},
"dependencies": {},
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0"
},
"multiapplib": {
"version": "1.0.0",
"target": "project"

}

},
"imports": "dnxcore50"
}
}
}

在 dependencies 节点中加入 multiapplib 

然后在 multiapplib 加入User 类。然后再multiapp 中使用。

    public class User
{
public int Id { get; set; }
public string UserName { get; set; }
public string Password { get; set; } public override string ToString()
{
return $"user:{UserName}{Password}";
}
}

加好User Class 我们首先右下角点击一下multiapp 切换到 multiapplib。

等到Running 变成 Switch project 我们再切换到 multiapp。这样就会有智能提示。

然后在multiapp 中添加命令空间,然后使用。

调试就能正常的调试及,进入类库调试。

下面我们以multiappweb 为主项目引用 multiapplib ,然后调试ASP.NET Core 多项目。

这里由于一个目录没办法存在两个主项目,所以我们先删除掉dotnet文件夹下 .vscode。

然后打开dotnet 文件夹,选择项目 multiappweb,然后再让VS Code生成.vscode。

同样添加引用,

   "dependencies": {
"multiapplib": {
"version": "1.0.0",
"target": "project"
},
...

我们在Controller 中使用

        using ClassLibrary;

        public IActionResult Index()
{
User u=new User();
u.Id=;
u.UserName="linezero";
u.Password="";
return View(u);
}

对应的View

@model ClassLibrary.User

<h1>@Model.UserName</h1>

<h3>@Model.ToString()</h3>

代码编写好以后,我们调试程序会发现出错,因为ASP.NET Core 读取不到正确的路径。

默认生成的配置文件,将dotnet 做为了目录。这里我们要做一个更改。

打开dotnet 目录下的 .vscode 的launch.json

将cwd 及sourceFileMap 都加上multiappweb 路径。

然后我们再来调试。

成功执行,默认将会为我们打开 http://localhost:5000/ 这里没有样式是因为bootstrap没有下载下来。

同样的我们可以调试代码,也可以进到类库。

如果你觉得本文对你有帮助,请点击“推荐”,谢谢。

使用VS Code开发调试.NET Core 多项目的更多相关文章

  1. 使用VS Code开发 调试.NET Core 应用程序

    使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版. 本文使用微软提供的示例进行开发及调试. https://github.com/aspnet/ ...

  2. Mac上使用Visual Studio Code开发/调试.NET Core代码

    Mac上使用Visual Studio Code开发/调试.NET Core代码 .Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今 ...

  3. VS Code开发调试.NET Core

    使用VS Code开发 调试.NET Core 应用程序   使用VS Code开发 调试.NET Core RC2应用程序,由于.NET Core 目前还处于预览版. 本文使用微软提供的示例进行开发 ...

  4. 使用VS Code开发调试.NET Core 2.0

    使用VS Code 从零开始开发调试.NET Core 2.0.无需安装VS 2017 15.3+即可开发调试.NET Core 2.0应用. VS Code 全称是 Visual Studio Co ...

  5. VS Code开发调试.NET Core 2.0

    VS Code开发调试.NET Core 2.0 使用VS Code 从零开始开发调试.NET Core 2.0.无需安装VS 2017 15.3+即可开发调试.NET Core 2.0应用. VS ...

  6. 在Mac上使用Visual Studio Code开发/调试.NET Core代码

    .Net Core 1.0终于发布了,Core的一大卖点就是跨平台.这个跨平台不只是跨平台运行,而且可以跨平台开发.今天抽空研究了下在Mac下如何使用VS Code来开发.NET Core程序,并且调 ...

  7. [.NET Core 32]升级vs code之后,vs code无法调试net core web项目

    错误提示&处理方法 参考链接:https://github.com/OmniSharp/omnisharp-vscode/issues/1742 错误:The .NET Core debugg ...

  8. 使用VS Code开发调试ASP.NET Core 1.0

    使用VS Code开发调试ASP.NET Core 1.0,微软在今天凌晨发布了.NET Core 1.0,ASP.NET Core 1.0 与 Entity Framewok 1.0. 之前跟大家讲 ...

  9. VS Code开发调试ASP.NET Core 1.0

    VS Code开发调试ASP.NET Core 1.0 使用VS Code开发调试ASP.NET Core 1.0,微软在今天凌晨发布了.NET Core 1.0,ASP.NET Core 1.0 与 ...

随机推荐

  1. android服务里生成通知点击后返回正在运行的程序和当前的Activity

    想在服务里生成一个通知,并且点击通知打开当前应用程序下单当前活动,折腾了半天,网上的那些都不靠谱,试了半天,最后把ActivityManager和反射都用进来了,终于解决了这个问题.这样在服务中想恢复 ...

  2. 2013 duilib入门简明教程 -- 界面设计器 DuiDesigner (10)

        上一个教程讲解了怎么布局最大化.最小化.关闭按钮,但是如果手动去计算这三个按钮的位置和大小的话,非常的不直观,也很不方便.     所以这一章准备介绍duilib的UI设计器,由于这个设计器很 ...

  3. Android笔记——判断程序是否第一次启动

    public class Welcome extends Activity { private final long SPLASH_LENGTH = 2000; Handler handler = n ...

  4. 基于JQuery的浮动DIV显示提示信息并自动隐藏

    /** * 浮动DIV定时显示提示信息,如操作成功, 失败等 * @param string tips (提示的内容) * @param int height 显示的信息距离浏览器顶部的高度 * @p ...

  5. DAC Usage4:从 Backup Package(.bacpac)还原DB

    使用DAC,能够将database的schema 和 data 从一个server 或 cloud 上复制到另外一个server上,存储schema 和 data的文件是 .bacpac 文件. 方法 ...

  6. Constraint6:更新外键约束(Foreign Key Constraint)的引用列

    在SQL Server中,表之间存在引用关系,引用关系通过创建外键约束(Foreign Key Constraint)实现.如果一个Table中的column被其他Table引用,那么该表是参考表,或 ...

  7. MindManger 2016 64位 破解版

    下载地址:http://pan.baidu.com/s/1mi7xkIO 如果失效请去 “毒逆天吧” 发个求助帖即可就有人补上

  8. jquery 拖拽,框选的一点积累

    拖拽draggable,框选 selectable,按ctrl多选,临近辅助对齐,从工具栏拖工具  等,和jqueryui的selectable不同,是在一个父div里框选子div(类似框选文件),一 ...

  9. OpenNURBS 3DM Viewer

    OpenNURBS 3DM Viewer eryar@163.com Abstract. The openNURBS Toolkit consists of C++ source code for a ...

  10. POJ2513-Colored Sticks

    /*思路:类似图论中“一笔画”问题,两根木棒的相连接的端点是一样的颜色,(a,b)--(b,c)--(c, d)....方法:trie树+并查集, 利用trie树建立字符串和某一个节点的映射,并将这些 ...