zoukankan      html  css  js  c++  java
  • .Net Core新建解决方案,添加项目引用,使用VSCode调试

    并不是我自己琢磨的,是看了别人学习的,因为写的都不完整,所以就整理一下记录后面忘了回看。

    反正.Net Core是跨平台的,就不说在什么系统上了。假设我要建一个名为Doggie的解决方案,里面包含了一个MVC项目,一个Models类库,一个包含了公共方法的类库Common,现在开始。

    1、进入存放项目文件的文件夹,执行命令:

    dotnet new sln -o Doggie

    ps:能新建什么项目,可以使用dotnet new -h查看,会列出支持创建的项目类型和类型名字。

    成功执行后可以看到目录内多了一个名为Doggie的文件夹。

    2、cd进入文件夹Doggie,在该文件夹内打开命令行,输入如下命令:

    dotnet new classlib -o Models

    可以看到命令行输出内容显示创建了一个类库,如果有依赖,还会帮我们还原。

    接下来新建Common类库,同样的命令:

    dotnet new classlib -o Common

    .Net Core也会做同样的事情,新建一个名为Common类库。

    接下来新建MVC项目,命令如下:

    dotnet new mvc -o MvcApp

    顺利建好了。现在Doggie目录下有三个文件夹。

    现在项目文件建好了,接下来是不是要把前面创建的三个项目加到解决方案中?

    执行命令:

    dotnet add -h

    提示的很清楚了对不对,要添加项目引用,使用reference,那就执行下面命令:

    dotnet sln add Models/Models.csproj

    ps:上面的内容中提到,add是有一个参数的,表示要添加引用的项目文件,如果不指定就在当前文件夹内搜索项目,咱们这里传递sln,表示要为sln文件添加引用,由于文件夹下只有一个sln,所以会默认加到Doggie.sln下。

    我试了下,这个参数说是项目文件并不恰当,应该是项目文件类型,因为我尝试传入Doggie.sln时并不能成功执行。

    同样的命令添加Common和MvcApp。

    dotnet sln add Common/Common.csproj
    
    dotnet sln add MvcApp/MvcApp.csproj

    现在已经全部建好文件了,接着用VSCode打开,VSCode并不能打开sln文件,所以只能直接打开文件夹了。

    Doggie文件夹打开后如下,可见前面创建的三个项目都显示在左侧。这时就有个问题,前面只是把项目加到了解决方案中,那MvcApp项目要引用Common和Model类库的呀,这时打开MvcApp.csproj文件:

    发现只引用了.Net Core的两个sdk,Common和Models并未引用,所以在MvcApp项目内也就不能使用这两个类库,其实添加和前面也是一样的,打开Terminal窗口,执行命令:

    cd MvcApp
    dotnet add reference ../Common/Common.csproj

    可以看到Common项目已经添加进来了,再打开MvcApp.csproj文件

    同样的方法添加Models类库即可。

    这样在MvcApp中就可以使用Models和Common了。

    ps:如果是第一次用VSCode打开.Net Core项目,肯定会有一堆错误,全是找不到命令空间啥的,因为这时VSCode还没有C#的开发环境,这时就根据左下角弹出来的框,添加各种C#开发的扩展就好了。

    再ps:上面是添加本地类库,如果是添加nuget上的类库怎么添加?就以添加Newtonsoft.json为例吧:

    dotnet add package Newtonsoft.json --version 11.0.0.0

    即可。

  • 相关阅读:
    ubuntu 16.04常见错误--Could not get lock /var/lib/dpkg/lock解决
    Ubuntu 16.04 LTS安装搜狗拼音输入法网易云音乐 Remarkable
    Ubuntu 16.04 LTS(入门一)国内快速更新软件源
    C语言程序注释风格
    【译】基于主机的卡仿真(Host-based Card Emulation)
    NFC Spy:基于Android 4.4及以上手机的非接智能卡跟踪仪
    Ubuntu 16.04 Vim安装及配置
    Alpha阶段 第九次Scrum Meeting
    Alpha阶段 第八次Scrum Meeting
    Alpha阶段 第七次Scrum Meeting
  • 原文地址:https://www.cnblogs.com/daner1257/p/10334360.html
Copyright © 2011-2022 走看看