首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

.net 知新:【4】NuGet简介和使用

在包管理以前我们在项目中引用第三方包通常是去下载dll放到项目中再引用,后来逐渐发展成各种包管理工具,nuget就是一种工具,适用于任何现代开发平台的基本工具可充当一种机制,通过这种机制,开发人员可以创建...某些高级功能无法使用的时候我们就需要用命令的方式。 visual studio 使用 nuget 在VS里面有两种方式管理nuget包。第一种是右键项目->管理程序nuget包 进入导UI界面。...NuGet.org 是 NuGet 包的公用主机,NuGet 技术还支持在云中(如在 Azure DevOps 上)、在私有网络中或者甚至直接在本地文件系统以私密方式托管包。...所以有时候我们搜索文章的时候看到别人添加包,命令dotnet add package Newtonsoft.Json 我们要知道这是nuget包添加,程序包管理器控制台执行,或者在ui界面搜索包可视化操作添加...运行 pack 命令 运行dotnet pack 命令会打包解决方案中可打包的所有项目,也可以在项目属性上设置“在构建时生成NutGet包”。

2.2K40

无需安装 VS2019,在 Visual Studio 2022 中编译 .NET Framework 4.543.5 这样的古老框架

因此,我们将通过安装此 NuGet 包来解决 Visual Studio 2022 中目标包的缺失问题。 正常你只需要在项目中安装这个 NuGet 包即可。...不过考虑到大家基本上都是用 Visual Studio 来开发,所以上述操作在 VS 中的水土不服也需要特别处理一下。...包后值已被正常赋值了也不会使用(即使重启 VS 也是如此);于是我们在 TargetFrameworkRootPath 属性为 `` 时手工给其赋上正确的值。...不支持同一个文件夹下有两个 csproj 项目的情况 有时候为了方便,当两个项目几乎所有文件都相同,只是项目配置不同时,我们会考虑将这两个项目放到同一个文件夹里面以共用文件。...答案是在每个项目的 csproj 文件中添加下面几行: 1 2 3 <Compile Include="..

1.7K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    一个适合.NET Core的代码安全分析工具 - Security Code Scan

    SCS能够支持哪些项目类型?   当然是我们喜欢的.NET 和 .NET Core项目啦! SCS能够支持CI吗?   可以,通过MSBuild完美实现,后续会有介绍。...二、SCS的安装与基本使用 2.1 SCS的安装   目前,SCS支持两种方式的安装:   (1)VS扩展插件   (2)Nuget包   目前最新版本为3.0.0,2018年12月4日更新。   ...推荐使用Nuget包方式使用,因为CI也会依赖该Nuget包。...WebGoal.NET项目结构   第一步,当然是通过Nuget管理器引入SCS的包啦: ?...当然,你为此得付出的工作却没有结束,你还需要为系统配置Https证书和端口等等。   下一步?继续查看SCS给出的安全警告,选择性地进行修复,迭代反复。

    1.4K20

    svn协同开发下的dll版本管理最佳实践

    由于提交代码的开发人员失误,忘记提交本地更改的文件或少提交,特别是croj或sln项目和新添加的文件,因为新添加的文件在svn下默认是?状态的,这一点的话,只能靠开发人员自己细心解决; 2....完成之后,在每次只要更新这个目录,就能及时得获取到最新的引用版本,在项目文件中对该dll进行引用,实际上引用的是相对目录,这样就解决了因为版本或路径不一致导致的问题,预防这些人为的操作,可以极大的节省我们的开发时间到实际需要解决的问题上...这里提及到的一点是,在版本升级时,比如开始使用的是某个包的1.0.0版本,后来升级到1.1.0版本,后来1.1.0自己重新上传了一遍,但是版本号没有变,需要删除packages包里对应的1.1.0的包,...左边是编辑一些属性等,右侧是添加包文件 4.填入基本信息,其中Id其实是Name,就是我们在nuget浏览器里看到的名称 5.在左侧点击Edit dependencies,可添加外部依赖,在下载使用时,...在右侧右键,选择菜单Add a Lib Folder,在Lib上右键,选择Add .NET Folder来添加对应框架的版本,然后右键选择我们需要添加的文件即可 7.完成以下操作后,我们就可以点击最上面的

    1K10

    2018-8-24-快捷调试Nuget包

    由于最终产品E的依赖项,依赖于nuget上的库A,nuget发现有同名dll就会出现冲突 可行方法 最简单的方法是,我们打出一个alpha包,发送到nuget服务器中,然后在最终产品E中升级 缺点是成本较高...Visual Studio Marketplace 这个工具非常棒,有着全5星好评,大家快去下载 懒人方法 替换nuget缓存 我们知道在vs中的nuget包,从nuget服务器中下载之后会添加到本地...实操 我们找到目标nuget库所在的缓存目录,注意版本号要相同哦 ? 将原有的dll改为bak,此时我们发现vs对项目中所有有关于这个库的引用都飘红了,提示需要还原nuget ?...这个方法存在的缺点是,nuget缓存会影响所有项目,如果忘记调试后改回来,容易让其他项目出错 高级懒人方法 搭建本地nuget源 找到vs中工具-nuget管理器 ? 添加一个本地程序包源 ?...然后你可以在vs中的指定项目右键-打包(需要新格式才能支持),生成一个本地nuget包,放到刚刚的文件夹中 然后在产品项目里指定本地的程序包源,就可以看到你本地的nuget包了 ?

    94910

    【实验手册】使用Visual Studio Code 开发.NET Core应用程序

    15 任务3:向项目添加项目引用... 16 任务4:将NuGet包添加到项目或更新它... 17 概述 开源和跨平台开发是Microsoft 的当前和将来至关重要的策略。....十、 下面我们演示给项目添加一个Nuget包 利用我们前面安装的VS code 的Nuget 包扩展插件,我们选中HelloWorld.Web 项目,使用UI菜单查看- 命令面板: ?...接下来我们将我们的项目添加到我们的解决方案文件,我们很容易在Visual Studio 2017中打开解决方案,然后手动添加对每个项目的引用。...0 个警告 0 个错误 任务4:将NuGet包添加到项目或更新它 假设我们要将NuGet包添加到我们的一个项目中,我们可以使用该add package命令来执行此操作。...首先导航到要添加NuGet软件包的项目: PS D:\WorkTest\piedpiper\src> cd .

    3.4K90

    【实验手册】使用Visual Studio Code 开发.NET Core应用程序

    一旦您安装了 NuGet 项目管理器, 您还将使用它来安装 NuGet 包。 ? 练习2:使用命令行界面构建....十、 下面我们演示给项目添加一个Nuget包 利用我们前面安装的VS code 的Nuget 包扩展插件,我们选中HelloWorld.Web 项目,使用UI菜单查看- 命令面板: ?...接下来我们将我们的项目添加到我们的解决方案文件,我们很容易在Visual Studio 2017中打开解决方案,然后手动添加对每个项目的引用。...0 个警告 0 个错误 任务4:将NuGet包添加到项目或更新它 假设我们要将NuGet包添加到我们的一个项目中,我们可以使用该add package命令来执行此操作。...首先导航到要添加NuGet软件包的项目: PS D:\WorkTest\piedpiper\src> cd .

    5.2K102

    在.NET中使用User Secrets(用户机密)

    现实中,我用User Secret主要为了“它在我的设备上是为本地开发工作的”,而不是真正的机密。...你也可以自己生成guid并放到文件里,只需要在你设备的项目中添加,只不过guid必须是唯一的。...当然,如果你想让项目共享机密,可以在不同的项目中使用相同的guid。 到此,你就通过命令行设置了机密。 在notepad编辑机密文件之前,你需要先通过命令行创建一个机密。...但是需要注意,这个文件在你添加第一个机密之前,是不存在的。如果在你的csproj文件里有一个用户秘密guid,但是没有对应文件,那就会报错。 综上,使用VS可以很简单的实现所有的工作。...到检查工作的时候,需要快速恢复或忽略配置文件的改动,所以没有push。当然,这种情况不常见,code review发现时,会建立对应的git功能分支,修改也会被push。 现在我们看同一个例子。

    38930

    微软正式发布 Visual Studio 2022!香得一腿~

    它支持 MSBuild 和 CMake 项目。 现在可以在 WSL2 上本地构建和调试,而无需建立 SSH 连接。支持跨平台 CMake 项目和基于 MSBuild 的 Linux 项目。...个性化 为垂直和水平标签添加颜色标签 增加了主题包,并与 VS Code 主题作者合作,推出了自定义主题集合 建立了主题转换器,将 VS Code 主题转换到 Visual Studio 2022 中使用...如果你的构建依赖于这些程序集,请迁移项目以改用 NuGet 包。...添加了 ILanguageClient 重大更改修复 Git 工具 在创建 git 仓库的过程中,现在完全支持发布到 Azure DevOps 状态栏的增强,包括从空 VS 查看和打开仓库的新功能,并显示未拉取提交的数量...在使用 Visual Studio 调试器时,热重载现在可供 C++ 开发人员使用。

    2.8K20

    微软正式发布 Visual Studio 2022

    它支持 MSBuild 和 CMake 项目。 现在可以在 WSL2 上本地构建和调试,而无需建立 SSH 连接。支持跨平台 CMake 项目和基于 MSBuild 的 Linux 项目。...…… 个性化 为垂直和水平标签添加颜色标签 增加了主题包,并与 VS Code 主题作者合作,推出了自定义主题集合 建立了主题转换器,将 VS Code 主题转换到 Visual Studio 2022...如果你的构建依赖于这些程序集,请迁移项目以改用 NuGet 包。...添加了 ILanguageClient 重大更改修复 Git 工具 在创建 git 仓库的过程中,现在完全支持发布到 Azure DevOps 状态栏的增强,包括从空 VS 查看和打开仓库的新功能,并显示未拉取提交的数量...开发人员提供,对于许多 .NET 6 应用程序类型,不需要调试器。

    2.6K30

    VS Nuget的使用以及VS Code与git介绍

    NuGet能更方便地把一些dll和文件(如jquery)添加到项目中,而不需要从文件中复制拷贝。...git和nuget区别,别搞混了: 写程序必然需要版本控制,哪怕是个人项目也是必须的。我们在开发UWP APP的时候,VS2015默认提供了对微软TFS和Git的支持。...二、认识Nuget Nuget是一个VS的扩展插件。我们在使用VS开发时,Nuget能把在项目中添加、移除和更新引用的工作变得更加快捷方便。...我们可以通过VS菜单上的“工具→扩展和更新”来查看Nuget 三、如何使用Nuget 在解决方案管理器中,我们可以通过“右键子项目→管理Nuget程序包”或“右键子项目下的引用→管理Nuget程序包”来对该子项目的引用进行管理...在打开的“管理Nuget程序包”窗口中我们可以对该子项目引用的类库进行管理 nuget中搜索到的,一般都是该类库最新版本的,在使用过程中,我们可能需要去下载类库的历史版本,打开nuget官网: https

    1K40

    .NET Standard中配置TargetFrameworks输出多版本类库

    在.NET Standard/.NET Core技术出现之前,编写一个类库项目(暂且称为基础通用类库PA)且需要支持不同 .NET Framework 版本,那么可行的办法就是创建多个不同版本的项目(暂且称为...PBn项目分别执行下面操作:【添加】--【现有项】--【添加为链接的方式】,将PA项目代码文件添加到各自项目中,如果代码不同,则需要使用#if #else #endif 等标签来判断 .NET Framework...三、NuGet 方式引用程序集 下面演示添加一个多版本都支持的第三方类库,NLog 日志组件,目前最新版本为4.7.5。通过 NuGet 方式添加引用 ?...静态文件如何指定复制行为等,或许会发现安装NuGet之后希望能编辑的文件仅仅只是一个链接而已,如何让它包含在项目里面呢,请参考微软官方文档 NuGet ContentFiles揭秘,带回解决方案级包的讨论...vs2017中,已不支持此功能,NuGet 3 - 什么和为什么-Powershell安装和卸载脚本 关于nuget包安装的相关行为估计都可以通过msbuild属性或者任务来搞定,这一切都是可以通过命令行来执行的

    3K21

    使用 .NET CLI 构建项目脚手架

    前言 在微服务场景中,开发人员分配到不同的小组,系统会拆分为很多个微服务,有一点是,每个项目都需要单元测试,接口文档,WebAPI接口等,创建新项目这些都是重复的工作,而且还要保证各个项目结构的大体一致...准备工作 首先,我们需要准备一个简单的项目模板,我们希望以后可以通过脚手架,自动为我们生成这些项目和文件,这里面可能包含了单元测试项目,WebAPI项目等。...打包模板 基础工作已经准备完成,我们还需要把项目打包,发布到Nuget.org 或者是公司的内部 Nuget Server,这样其他人才可以下载和安装这个模板。...你可能很熟悉在.NET 中对单个项目进行打包,比如类库,可以在VS中直接对项目使用右键打包,也可以使用dotnet pack命令,不一样的是,我们需要打包的是整个项目结构,而不是单个项目。...最后,你可以把程序包推送到 nuget 服务器。

    69830

    gRPC在C#中的未来属于grpc-dotnet

    最初的 gRPC C#实现(Grpc.Core nuget 包)将进入维护模式,不会得到任何新功能,只会收到重要的错误修复和安全修复。最终的计划是在未来的某个时候逐步完全淘汰 Grpc.Core。...例如,我们决定将 gRPC C#实现建立在一个原生库上,因为在 2016 年,还没有可用的 C# HTTP/2 库可供我们依赖。...它花费了宝贵的资源,我们相信工程时间应该花在让 C#中的 gRPC 更容易使用和添加新功能(当然还有修复 bug)上,而不是需要在两个不同的代码库上工作,它们都服务于同一个目的。...Grpc.Core nuget 包将继续在 nuget.org 仓库中可用,但不会提供更多的修复(=甚至没有安全修复)。...我们强烈建议在新项目中只使用 grpc-dotnet。我们将在未来停止支持 Grpc.Core。 这是否意味着我现在需要停止使用 Grpc.Core 吗?

    2K40

    了解 .NET 9 中的新增的包 Microsoft.AspNetCore.OpenApi

    虽然这两个库都可以重构以支持原生 AoT,但这将是一项大量的工作,因为它需要对两个库的核心功能进行大量重写。...若要添加对生成 OpenAPI 文档的最低级别的支持,可以在添加对 Microsoft.AspNetCore.OpenApi NuGet 包的引用后,将以下代码添加到 ASP.NET Core 应用程序...此功能可以在将来的版本中添加。 这又是我添加到 OpenAPI Extensions for ASP.NET Core 库中的另一项功能,因此如果需要,您可以使用它来生成 YAML 文档。...我打开了 一个拉取请求 来解决这两个项目,合并后,所有已识别的方法调用都退出了基准测试中分析器跟踪的热路径。...如果开发人员对当前的实现感到满意,则无需从现有库切换到新的 OpenAPI 包,唯一令人信服的切换理由是您希望在本机 AoT 部署中生成 OpenAPI 文档。

    17310

    十分钟搭建自己的私有NuGet服务器-BaGet

    搭建BaGet 上传程序包 在vs中使用 其他 前言 NuGet是用于微软.NET(包括 .NET Core)开发平台的软件包管理器。...NuGet能够令你在项目中添加、移除和更新引用的工作变得更加快捷方便。 通常使用NuGet都是官方的服务,但你有没有想过搭建自己的NuGet呢?...本文使用的是BaGet,搭建过程也非常简单,下面进入正题。 开始 搭建BaGet BaGet是一个构建于ASP.NET Core 基础上的 NuGet V3 服务器的开源实现。...这样,NuGet服务就搭建完成了,是不是很简单? 上传程序包 随便创建一个类库项目用于测试: ? 右键项目,选择打包: ? 打包完成会得到一个nupkg文件: ?...在vs中使用 在vs2019中打开:工具-选项-NuGet包管理器-程序包源。添加一个源,输入名称,源:http://localhost:8020/v3/index.json ?

    1.3K30

    ASP.NET MVC 4, ASP.NET Web API 和ASP.NET Web Pages v2(Razor)现在都是开源了

    你可以在CodePlex 上查找源。请务必阅读ScottGu 的博客中的详细信息。 耶, 我加粗、 加下划线和斜体的最后部分,是的,这是无偿的。;) 这是在我们组织中的许多人艰辛工作的结果。...这也正是我来微软工作的原因。所以,这里发生了什么? 自从成立以来, ASP.NET MVC 已经是开源的了,在2009 年 4 月转换为了 MS PL 许可证,开发人员没有从社区采用贡献程序。...在微软的过去四年,我与社区密切合作以获得反馈,并让开发人员倾听心声。然而今天,随着我们引入更多贡献的开放源码项目,你可以更直接地参与。 发现bug 吗?发送一个单元测试或修复代码。...认为我们的覆盖点不够吗?提交一个单元测试。 有一个功能的想法吗?与开发人员更深入地参与和帮助编写它。 像每一个大的开放源码项目,每个签入 (开放源代码或其它方式) 将根据开发人员所使用的现有标准评估。...这仍然是一个路线图,其实,现在有比以往任何时候都多的微软开发人员在致力于ASP.NET。 你们为什么这样做? 我们为什么不应该这样做?我们喜欢开源,你们也是。

    1.6K60

    编译并体验 .NET MAUI 官方示例代码

    ) 增加 NuGet 源 https://aka.ms/maui-preview/index.json(否则无法识别用到的 MAUI 类型) 在以上都准备就绪的情况下,你只需要使用 Visual Studio...但如果你电脑上只有正式版的 Visual Studio,那么你需要前往预览版的下载地址下载一个预览版的在线安装包来安装。...工具安装完成后,直接输入命令 maui-check 然后回车运行,工具将自动检查你的电脑上是否已完成 MAUI 开发环境的搭建。它会在检查到问题之后发出轻轻的一声“嘟”,然后问你:“要尝试修复吗?...你只需要打 y 告诉它要修复就好了。 这样的问题会问很多次,你都需要答 y 修复,甚至可能还需要多次运行 maui-check 工具来进行修复。...增加 NuGet 源 我有另一篇博客介绍如何添加 NuGet 源,详细的方法你可以去那里看: 全局或为单独的项目添加自定义的 NuGet 源 - walterlv 要简单一点,你只需要在命令行中输入:

    53830

    【译】在 ASP.NET Core 中使用 SignalR

    由于.NET实现需要遵循这项规范,所以应用程序开发人员就不用担心每一种托管框架实现的BCL不同。....NET Standard被定义为一个单独的NuGet包,因为所有的.NET实现都必须支持它。工具变得简单了,因为对于特定的版本,它们有一套相同的API。你还可以针对多个.NET实现构建一个库项目。...你还可以构建特定平台API的.NET Standard封装器。 .NET Standard vs 可移植类库 可移植类库做的不是同一件事吗? 可移植类使用多个平台均都支持的通用API。...由于.NET Standard确定了API,而不是一个实现,所以不需要重新编译应用程序。任何新发布的.NET实现都实现了必须的库。应用程序不需要重新编译就可以运行在新的硬件平台或操作系统上。...从理论上讲,在调用API时可能会捕获到NotSupportedException异常,但那种情况应该很少见。

    1.2K40
    领券