异常处理汇总-开发工具 http://www.cnblogs.com/dunitian/p/4522988.html 协助开发里面总有几个是极简爱好者,但是呢删了不该删的就会影响项目开发,下面看下完整错误信息...: 这台计算机上缺少此项目引用的 NuGet 程序包。...使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 .....遇到问题不要慌,先着手解决看看~很明显,估计是这个包给删了,而这个包就是nuget正常使用的关键包~~~ ? UI操作: ? 命令操作: ? 重启收工 ?...离线下载:https://www.nuget.org/packages/Microsoft.CodeDom.Providers.DotNetCompilerPlatform
将 .NET Core 项目打一个最简单的 NuGet 源码包,安装此包就像直接把源码放进项目一样 2018-06-20 01:22 NuGet...---- 准备工作 我们需要一个可以用来打 NuGet 包的 .NET Core 项目,只需要在 Visual Studio 中新建一个即可。在本例中,我的项目名字是 Walterlv.Demo。...将源码加入 NuGet 包 在 项目文件中的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦) 中,我说到了项目文件中的各种 NuGet 属性。...这种带后缀形式的包在只是 NuGet 的辅助包而已,不是主包。...安装 NuGet 包时引入源码 为了让源码能随着包的安装加入到目标项目,我们需要 targets 文件来将源码引入。 在项目中新建 Assets 文件夹,这将用来放即将存入 NuGet 包中的文件。
文章目录 一、报错信息 二、解决方案 一、报错信息 ---- 运行 下载的 vstf_testagentlp.exe Visual Studio 2013 中文语言包 , 报如下错误 ; 二、解决方案...---- 在 https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/ 页面 中 , 找到 2013 版本 , 点击该版本右侧的 下载按钮...Language Pack " 两个版本 , " Agents for Visual Studio 2013 " 下载前 , 选择下载 简体中文 , 然后点击 " Download " 下载按钮 ; 下载后的
dotnet new 为给定的模板初始化 C# 或 F# 项目。 dotnet pack 创建代码的 NuGet 包。 dotnet publish 发布 .NET 依赖于框架或独立应用程序。...dotnet remove reference 删除项目引用。 NuGet 包 命令 函数 dotnet add package 添加 NuGet 包。...dotnet nuget locals 清除或列出本地 NuGet 资源,例如 http 请求缓存、临时缓存或计算机范围的全局包文件夹。...命令 函数 dotnet tool install 在计算机上安装工具。 dotnet tool list 列出计算机上当前安装的所有全局、工具路径或本地工具。...dotnet tool update 更新计算机上安装的工具。
项目通过项目引用或 NuGet 包引用所依赖的其他库。 对于目标版本低于 .NET Core 3.0 的可执行项目,通常不会将 NuGet 中的库依赖项复制到输出文件夹。...而是在运行时从 NuGet 全局包文件夹中对其进行解析。 考虑到这一点,dotnet build 的产品还未准备好转移到另一台计算机进行运行。...--no-self-contained 将应用程序发布为与框架相关的应用程序。 必须在目标计算机上安装兼容的 .NET 运行时才能运行应用程序。 自 .NET 6 SDK 起可用。...这是用于设置运行时标识符 (RID) 的简写语法,其中提供的值与默认 RID 相结合。 例如,在 win-x64 计算机上,指定 --os os 会将 RID 设置为 os-x64。...--source 要在还原操作期间使用的 NuGet 包源的 URI。 -v|--verbosity 设置命令的详细级别。
而使用 Microsoft.Net.Compilers 这款 NuGet 包就可以做到。...这是一个 .NET 的编译器包,无论你系统中安装的是什么版本的 C# 编译器,使用此包都可以强制项目使用某个特定版本的 C# 编译器。...使用 Microsoft.Net.Compilers 第一步:安装 .NET Framework 4.6 或以上 Microsoft.Net.Compilers 对项目本身没有什么要求,但需要编译项目的计算机上安装有完整功能的...这是开发者计算机上的事情,不影响产品的 .NET Framework 版本需求。如果你连系统也比较旧,那么安装下最新版本的 .NET Framework 即可。...第二步:安装 NuGet 包 Microsoft.Net.Compilers 在你需要编写最新版本 C# 的项目中安装 NuGet 包 Microsoft.Net.Compilers。
因此,我们将通过安装此 NuGet 包来解决 Visual Studio 2022 中目标包的缺失问题。 正常你只需要在项目中安装这个 NuGet 包即可。..." Version="1.0.2" PrivateAssets="all" /> 请特别注意 如果你正在开发的是库项目,那么在引用此 NuGet 包之后...,应该加上 PrivateAssets="all" 来标记此 NuGet 包不会成为你自己的库的其中一个依赖。...在使用了以上代码后,Visual Studio 2022 刚打开项目时会短暂提示缺少 .NET Framework 4.5 框架,但真正编译时此提示会消失。...于是这种方式安装的 NuGet 包不像其他的 NuGet 包那样可以传递到其他引用它的项目。
EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> 这台计算机上缺少此项目引用的...使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 {0}。...从对比中我们就能明显看出新 csproj 文件的优势: 文件小,易读易写 在版本管理中更容易解冲突 NuGet 包的引用没有路径要求,这意味着开发者可以任意指定 NuGet 包的位置 嵌套的引用不需要重复指定...其实这是只有新的项目文件才会出现的编译错误,而错误原因是 NuGet 的缓存文件中与包引用相关的信息已经不正确了,需要运行 nuget restore 或者 dotnet restore 重新更新此文件才行...但是,只有使用了 Microsoft.NET.Sdk 的新 csproj 文件才会在执行了此命令后重新生成正确的包引用缓存文件;原来的格式并不会生成此文件,也就是说,无法修复。
简单来说,nuget包解决了dll引用的问题,开发者可以通过打包,然后发布到公有主机或者私有主机上,供其他开发者使用。可以大大的提高创建一个.NET应用的效率。...私有主机上,比如团队内部几个人可以访问。 消费者:很好理解,就是我们从nuget获取包的开发者。 简单的总结下这几个角色的关系:创建者创建一个nuget包,并发布到主机上。...然后使用者在可访问的主机上搜索安装nuget包到项目中,这样项目就可以利用包提供的功能。如图 ?...包选项框,则生成项目时会自动生成nuget包;包ID:是唯一的标识,用户搜索和使用就是通过包ID。...此清单可用于构建包装并向消费者提供信息。清单始终包含在包装中。
若要运行应用程序,dotnet run 命令需从 NuGet 缓存解析共享运行时之外的应用程序依赖项。 因为它使用缓存的依赖项,因此,不推荐在生产中使用 dotnet run 来运行应用程序。...有关如何使用 NuGet 源的信息,请参阅 dotnet restore 文档。 以长格式传入时,此命令支持 dotnet restore 选项(例如,--source)。...这是用于设置运行时标识符 (RID) 的简写语法,其中提供的值与默认 RID 相结合。 例如,在 win-x64 计算机上,指定 --arch x86 会将 RID 设置为 win-x86。...例如,在 win-x64 计算机上,指定 --os os 会将 RID 设置为 os-x64。 如果使用此选项,请不要使用 -r|--runtime 选项。...(在本例中,--help 参数被传递到应用程序,因为使用了空白的 -- 选项): dotnet run --configuration Release -- --help 在仅显示最小输出的当前目录中还原项目的依赖项和工具
若要查看有关缺少的依赖项可能导致运行时失败的警告,请使用 PublishReadyToRunShowWarnings=true。...建议在项目文件中而不是在命令行中指定此选项。...如果此命令完成后,下载仍在运行,则将停止下载。 有关详细信息,请参阅播发清单。 自变量 PROJECT|SOLUTION 要发布的项目或解决方案。...这是用于设置运行时标识符 (RID) 的简写语法,其中提供的值与默认 RID 相结合。 例如,在 win-x64 计算机上,指定 --arch x86 会将 RID 设置为 win-x86。...--manifest 指定一个或多个目标清单,用于剪裁与应用程序一同发布的一组包。 清单文件是 dotnet store 命令输出的一部分。
为了给开发者提供更多便利的功能。本SDK提供了Newbe.Mahua.*.ApiExtensions系列 nuget 包。...在项目源码下Readme.md的MahuaApi支持列表详细记录了平台原生支持的API和扩展包支持的API。...Newbe.Mahua.CQP.ApiExtensions 1.7 版本实现了 CQP 平台下发送群公告的功能,因此,通过 nuget 直接安装此包即可。...,若缺少此注册,则不会调用相关的实现类 builder.RegisterType(...通过自定义扩展和扩展包的引入,可以弥合各平台之间的不同。 Newbe.Mahua.*.ApiExtensions系列 nuget 包的实现需要依托社区发展方可进一步完善,欢迎您参与其中。
构建时生成Nuget包:顾名思义,除打包命令,构建时也会自动生成nuget包; 标记:帮助其他人定位你的包,了解包的能力。 给package设定一个唯一id,并填写其他属性。...如果你没有看到打包命令,你的项目可能不是SDk-style风格的项目,这是要使用 nuget.exe Cli(或者迁移到SDK-style项目,再使用dotnet Cli)。...Visual Studio构建项目并创建.nupkg文件,插看输出窗体,获取包文件的路径。...推送命令中的错误通常表明存在问题 , 如: 您可能忘记了更新项目的版本号,而尝试发布同签名的软件包。 您尝试使用主机上已存在的标识符发布程序包时,也会看到错误:名称“ AppLogger”已经存在。...如果您确认使用的是有效 API key,则此错误提示不准确,实际是命名冲突,从以上错误的“权限”部分无法完全看出这一点。更改程序包标识符,重建项目,重新创建.nupkg文件,然后重试push命令。
$(PackageLicenseUrl): 此 NuGet 包协议所在的 url。 $(PackageProjectUrl): 此 NuGet 包的项目 url。...$(PackageIconUrl): 此 NuGet 包的图标 url,无论是 nuget.org 还是 Visual Studio 都将从这个 url 下载包的图标。...-- 此程序集不可打包,通常在单元测试项目中设置此属性。... 引用的项目或包中的指定部分依然是本项目的依赖项,但是在打 NuGet 包时不作为依赖项(不会传递到下一个项目)。...,它是一个使用了非常多参数的 Task。
安装nuget包 Nuget是什么?点击学习 本SDK是多目标平台的SDK。...可以根据你的需求安装对应的nuget包,我们将这些nuget包称为平台支持包详细罗列如下: 平台 nuget包 酷Q(https://cqp.im) Newbe.Mahua.CQP Amanda(http...://www.52chat.cc/) Newbe.Mahua.Amanda 可以在同一个项目中安装多个平台支持包,如此一来,一个项目进行开发,多个平台同时支持。...除了安装平台支持包之外,还可以安装Newbe.Mahua.Tools.Psake这个nuget,我们称为开发工具包。 开发工具包提供了在开发过程中一些必要的自动化过程,例如版本打包等。...builder.RegisterType().AsImplementedInterfaces(); //将需要监听的事件注册,若缺少此注册,则不会调用相关的实现类
不存在的版本(新版本已修复) 如果某个包的特定版本在所有源中不存在,那么安装此包的项目再也无法更新或者卸载此包了(也就别想再编译通过了)。...编译不通过后无法安装和更新 NuGet 包 有些情况下,会因为项目没有办法完成编译导致无法安装和更新某些 NuGet 包;但编译不通过其实就是这个 NuGet 包导致的(比如某个测试包)。...其实这是只有新的项目文件才会出现的编译错误,而错误原因是 NuGet 的缓存文件中与包引用相关的信息已经不正确了,需要运行 nuget restore 或者 dotnet restore 重新更新此文件才行...但是,只有使用了 Sdk 风格的 csproj 文件才会在执行了此命令后重新生成正确的包引用缓存文件;原来的格式并不会生成此文件,也就是说,无法修复。...依赖的项目会自动转为依赖的 NuGet 包 如果你给一个项目 A 打 NuGet 包,但这个项目引用此解决方案中的另一个项目 B。那么这时打包,NuGet 会认为 A 包依赖于 B 包。
,可以在 Windows 计算机上使用 PerfView。...TraceCompass 也可以在 Linux 计算机上工作,因此不需要将跟踪移到 Windows 计算机上。 要使用 TraceCompass 打开跟踪文件,需要解压缩该文件。...crossgen 是用于创建自包含应用的 NuGet 包的一部分,因此获取正确版本的 crossgen 的一种方法是创建应用程序的自包含包。...创建自包含应用程序的副作用是 dotnet 工具会下载名为 runtime.linux-x64.microsoft.netcore.app 的 NuGet 包,并将其置于目录 ~/.nuget/packages...perfcollect 以前发出的警告应会消失。 这在每台计算机上只需要执行一次(直到更新运行时为止)。
不存在的版本(新版本已修复) 如果某个包的特定版本在所有源中不存在,那么安装此包的项目再也无法更新或者卸载此包了(也就别想再编译通过了)。...编译不通过后无法安装和更新 NuGet 包 有些情况下,会因为项目没有办法完成编译导致无法安装和更新某些 NuGet 包;但编译不通过其实就是这个 NuGet 包导致的(比如某个测试包)。...其实这是只有新的项目文件才会出现的编译错误,而错误原因是 NuGet 的缓存文件中与包引用相关的信息已经不正确了,需要运行 nuget restore 或者 dotnet restore 重新更新此文件才行...但是,只有使用了 Microsoft.NET.Sdk 的新 csproj 文件才会在执行了此命令后重新生成正确的包引用缓存文件;原来的格式并不会生成此文件,也就是说,无法修复。...依赖的项目会自动转为依赖的 NuGet 包 如果你给一个项目 A 打 NuGet 包,但这个项目引用此解决方案中的另一个项目 B。那么这时打包,NuGet 会认为 A 包依赖于 B 包。
这也是 NuGet 源代码包的核心原理部分。...关于 NuGet 源代码包的制作方法,可以扩展阅读: 将 .NET Core 项目打一个最简单的 NuGet 源码包,安装此包就像直接把源码放进项目一样 从零开始制作 NuGet 源代码包(全面支持 ....)应该设成此 Target 的依赖。...例如我们做一个 NuGet 包,这个 NuGet 包的 .targets 文件中写了下面几个 Target: _WalterlvEvaluateProperties 用于初始化一些属性和参数,其他所有的...会根据 NuGet 包用户的设置有条件地引入一些额外的源代码 那么这个时候我们前面写的用于引入源代码的 _WalterlvIncludeSourceFiles 编译目标其依赖的 Target 会更多。
在安装此 NuGet 包后,目标项目将获得这些源代码。 你可以通过以下博客了解如何制作一个源代码包。...将 .NET Core 项目打一个最简单的 NuGet 源码包,安装此包就像直接把源码放进项目一样 - 吕毅 Roslyn 如何基于 Microsoft.NET.Sdk 制作源代码包 - 林德熙 SourceYard...我们是通过项目中设置了属性 BuildOutputTargetFolder 让生成的文件跑到这里来的,目的是避免安装此 NuGet 包之后,引用了我们生成的 dll 文件。...; } } } 编译 现在,编译我们的项目,发现完全可以正常编译,就像我在这篇博客中说到的一样: 将 .NET Core 项目打一个最简单的 NuGet 源码包,安装此包就像直接把源码放进项目一样...,因为上面的代码可以使得项目文件的修改完全确定,不用随着开发计算机的不同或者 NuGet 包的数量和版本不同而变化。