- 在VisualStudio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)
- Android开机流程介绍
- STM32CubeMX教程31USB_DEVICE-HID外设_模拟键盘或鼠标
- 深入浅出Java多线程(五):线程间通信
在Visual Studio中,选择“新建>文件>”Project,搜索“ASP.NET Web 应用程序 (.NET Framework) ”,选择 C# 的匹配模板.
将“框架”设置为“.NET Framework 4.6” .
为应用程序提供除 NuGet.Server 之外的合适名称,选择“确定”,在接下来出现的对话框中选择“空”模板,然后选择“确定” .
右键单击项目,选择“管理 NuGet 包” .
如果面向 .NET Framework 4.6,请在“包管理器 UI”中,选择“浏览器”选项卡,然后搜索并安装 NuGet.Server 包的最新版本 。 (也可以使用 Install-Package NuGet.Server 从包管理器控制台安装。)如果出现提示,请接受此许可条款.
安装 NuGet.Server 会将空 Web 应用程序转换成包源。 此操作会安装各种其他包,在应用程序中创建 Packages 文件夹,并修改 web.config 以包括其他设置(请参阅该文件中的注释部分以获取详细信息).
重要 。
在 NuGet.Server 包完成对该文件的修改后,仔细检查 web.config。 NuGet.Server 可能不会覆盖现有元素,而会创建重复元素。 稍后尝试运行该项目时,这些重复项会导致“内部服务器错误”。 例如,如果 web.config 在安装 NuGet.Server 之前包含 <compilation debug="true" targetFramework="4.5.2" />,则该包不会覆盖它,而是会插入另一个 <compilation debug="true" targetFramework="4.6" />。 在这种情况下,请删除具有较旧框架版本的元素.
在不使用调试或 Ctrl+F5) 的情况下,使用调试>"开始"菜单在本地运行站点Visual Studio (。 主页提供包源 URL,如下所示。 如果发现错误,请仔细检查 web.config 是否有重复元素(如前文所述).
首次运行应用程序时,NuGet.Server 会重新构建 Packages 文件夹,以包含每个包的文件夹。 这符合 NuGet 3.3 中引入的用于提高性能的本地存储布局。 添加更多包时,请继续遵照此结构.
测试本地部署后,请根据需要将应用程序部署到任何其他内部或外部网站.
部署到 http://<domain> 后,用于包源的 URL 将为 http://<domain>/nuget.
NuGet.Server 站点运行后,就可以使用 nuget push 添加包,前提是在 web.config 中设置了 API 密钥值.
安装 NuGet.Server 包后,web.config 包含一个空 appSetting/apiKey 值:
XML 。
<appSettings>
<add key="apiKey" value="" />
</appSettings>
省略 apiKey 或将其留空时,会禁用向源推送包的功能.
要启用此功能,请设置 apiKey 的值(理想情况下为强密码),并添加值为 true 名为 appSettings/requireApiKey 的密钥:
XML 。
<appSettings>
<!-- Sets whether an API Key is required to push/delete packages -->
<add key="requireApiKey" value="true" />
<!-- Set a shared password (for all users) to push/delete packages -->
<add key="apiKey" value="" />
</appSettings>
如果服务器已受保护或不需要其他 API 密钥(例如,在本地团队网络上使用专用服务器时),可将 requireApiKey 设置为 false。 然后,有权访问服务器的所有用户均可推送包.
从 NuGet.Server 3.0.0 开始,推送包的 URL 更改为 http://<domain>/nuget。 在 3.0.0 版本之前,推送 URL 为 http://<domain>/api/v2/package.
对于 NuGet 3.2.1 和更高版本,除 /nuget 外,默认还会通过启动配置(默认为 NuGetODataConfig.cs)中的 enableLegacyPushRoute: true 选项启用此旧 URL /api/v2/package。 请注意,在同一项目中托管多个源时,此功能不适用.
使用 NuGet.Server 时,nuget delete 命令会从存储库中删除一个包,但前提是包含 API 密钥和注释.
如果想要改变行为以从列表中删除包(将其保留为可用于包还原),请将 web.config 中的 enableDelisting 键更改为 true.
对于 NuGet.Server 1.5 和更高版本,可使用 web.config 中的 appSettings/packagesPath 值自定义包文件夹:
XML 。
<appSettings>
<!-- Set the value here to specify your custom packages folder. -->
<add key="packagesPath" value="C:\MyPackages" />
</appSettings>
packagesPath 可以是绝对或虚拟路径.
省略 packagesPath 或将其留空时,包文件夹是默认的 ~/Packages.
要在向服务器发布应用程序时在源中提供包,请将每个 .nupkg 文件添加到 Visual Studio 中的 Packages 文件夹,然后将每个文件的“生成操作”设置为“内容”,将“复制到输出目录”设置为“始终复制” :
Packages文件夹,是发布的nuget程序包所存的地址 。
1、项目鼠标右键打开菜单项,选择管理NuGet程序包,打开NuGet包管理器 。
2、在顶部菜单栏,工具=》选项,弹出对话框 。
1、新建一个.Net 8类库项目,随便写入一些代码,在项目鼠标右键选择属性,在项目属性页面,包常规里,在构建时生成NuGet包选择框中选中,生成项目 。
2、推送包,打开项目生成的Nuget包所在文件夹,输入cmd,定位到该文件夹下,输入命令 。
需要apikey
dotnet nuget push NuGet包名 --api-key APIkey --source NuGet服务器地址
dotnet nuget push Contoso.08.28.22.001.Test.1.0.0.nupkg --api-key qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 --source https://api.nuget.org/v3/index.json
不需要apikey
dotnet nuget push NuGet包名 --source NuGet服务器地址
dotnet nuget push DeanNuGet.Package.Consul.1.0.0.nupkg --source http://127.0.0.1:8088/nuget
推送包第二种,直接把该包文件直接复制到NuGetServer服务所在的文件夹里的Packages文件夹下 。
部署私有nuget.server服务参考文档: https://learn.microsoft.com/zh-cn/nuget/hosting-packages/nuget-server (推荐) 。
https://www.cnblogs.com/rqcim/p/15923931.html 。
打包参考文档: https://learn.microsoft.com/zh-cn/nuget/quickstart/create-and-publish-a-package-using-visual-studio?tabs=netcore-cli(推荐) https://zhuanlan.zhihu.com/p/649744350 https://www.cnblogs.com/elsons/p/17012023.html 。
推送包 使用cmd进入包文件所在的目录,从包含 .nupkg 文件的文件夹运行以下命令。 指定 .nupkg 文件名,并将密钥值替换为 API 密钥.
dotnet nuget push Contoso.08.28.22.001.Test.1.0.0.nupkg --api-key qz2jga8pl3dvn2akksyquwcs9ygggg4exypy3bhxy6w6x6 --source https://api.nuget.org/v3/index.json
没有密钥 。
dotnet nuget push DeanNuGet.Package.Consul.1.0.0.nupkg --source http://127.0.0.1:8088/nuget
最后此篇关于使用NuGet.Server创建和部署ASP.NETWeb应用程序搭建私有Nuget服务器的文章就讲到这里了,如果你想了解更多关于使用NuGet.Server创建和部署ASP.NETWeb应用程序搭建私有Nuget服务器的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我是 C 语言新手,我编写了这个 C 程序,让用户输入一年中的某一天,作为返回,程序将输出月份以及该月的哪一天。该程序运行良好,但我现在想简化该程序。我知道我需要一个循环,但我不知道如何去做。这是程序
我一直在努力找出我的代码有什么问题。这个想法是创建一个小的画图程序,并有红色、绿色、蓝色和清除按钮。我有我能想到的一切让它工作,但无法弄清楚代码有什么问题。程序打开,然后立即关闭。 import ja
我想安装screen,但是接下来我应该做什么? $ brew search screen imgur-screenshot screen
我有一个在服务器端工作的 UDP 套接字应用程序。为了测试服务器端,我编写了一个简单的 python 客户端程序,它发送消息“hello world how are you”。服务器随后应接收消息,将
我有一个 shell 脚本,它运行一个 Python 程序来预处理一些数据,然后运行一个 R 程序来执行一些长时间运行的任务。我正在学习使用 Docker 并且我一直在运行 FROM r-base:l
在 Linux 中。我有一个 c 程序,它读取一个 2048 字节的文本文件作为输入。我想从 Python 脚本启动 c 程序。我希望 Python 脚本将文本字符串作为参数传递给 c 程序,而不是将
对于一个类,我被要求编写一个 VHDL 程序,该程序接受两个整数输入 A 和 B,并用 A+B 替换 A,用 A-B 替换 B。我编写了以下程序和测试平台。它完成了实现和行为语法检查,但它不会模拟。尽
module Algorithm where import System.Random import Data.Maybe import Data.List type Atom = String ty
我想找到两个以上数字的最小公倍数 求给定N个数的最小公倍数的C++程序 最佳答案 int lcm(int a, int b) { return (a/gcd(a,b))*b; } 对于gcd,请查看
这个程序有错误。谁能解决这个问题? Error is :TempRecord already defines a member called 'this' with the same paramete
当我运行下面的程序时,我在 str1 和 str2 中得到了垃圾值。所以 #include #include #include using namespace std; int main() {
这是我的作业: 一对刚出生的兔子(一公一母)被放在田里。兔子在一个月大时可以交配,因此在第二个月的月底,每对兔子都会生出两对新兔子,然后死去。 注:在第0个月,有0对兔子。第 1 个月,有 1 对兔子
我编写了一个程序,通过对字母使用 switch 命令将十进制字符串转换为十六进制,但是如果我使用 char,该程序无法正常工作!没有 switch 我无法处理 9 以上的数字。我希望你能理解我,因为我
我是 C++ 新手(虽然我有一些 C 语言经验)和 MySQL,我正在尝试制作一个从 MySQL 读取数据库的程序,我一直在关注这个 tutorial但当我尝试“构建”解决方案时出现错误。 (我正在使
仍然是一个初学者,只是尝试使用 swift 中的一些基本函数。 有人能告诉我这段代码有什么问题吗? import UIKit var guessInt: Int var randomNum = arc
我正在用 C++11 编写一个函数,它采用 constant1 + constant2 形式的表达式并将它们折叠起来。 constant1 和 constant2 存储在 std::string 中,
我用 C++ 编写了这段代码,使用运算符重载对 2 个矩阵进行加法和乘法运算。当我执行代码时,它会在第 57 行和第 59 行产生错误,非法结构操作(两行都出现相同的错误)。请解释我的错误。提前致谢:
我是 C++ 的初学者,我想编写一个简单的程序来交换字符串中的两个字符。 例如;我们输入这个字符串:“EXAMPLE”,我们给它交换这两个字符:“E”和“A”,输出应该类似于“AXEMPLA”。 我在
我需要以下代码的帮助: 声明 3 个 double 类型变量,每个代表三角形的三个边中的一个。 提示用户为第一面输入一个值,然后 将用户的输入设置为您创建的代表三角形第一条边的变量。 将最后 2 个步
我是新来的,如果问题不好请见谅 任务:将给定矩阵旋转180度 输入: 1 4 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 输出: 16 15 14 13 12 11
我是一名优秀的程序员,十分优秀!