搭建目的:在这之前也有做过这块的搭建,我们为了可以自己私有引用这些包而不想在这上面共享,就要私有化搭建,当初只是没有做记录,今天记录下来
先决条件有二
1.拥有一个nuget账号,用来获取秘钥
2.你需要一台安装了VS的电脑
获取 API 密钥
在发布 NuGet 包之前,请创建 API 密钥:
-
登录到 nuget.org 帐户 ,或者 创建一个帐户 (如果还没有帐户)。
-
选择右上角的用户名,然后选择“ API 密钥”。
-
选择“ 创建”,并提供密钥的名称。
-
在 “选择范围”下,选择“ 推送”。
-
在 “选择包>Glob 模式”下,输入*。
-
选择“创建”。
-
选择“ 复制 ”以复制新密钥。
开始新建项目
注意:它的搭建要求是.net framework 4.6
创建一个空的项目
引用Nuget服务包(这就是为什么要搭建.NET Framework 4.6 SDK的原因)
安装
服务包好了之后就F5开始调试,出现下面界面就成功了
若果出现报错安装一下有关ASP相关的所有windows的组件
1.这类错
<modules runAllManagedModulesForAllRequests="true">
<remove name="WebDAVModule" />
安装它
2.这类错
"/”应用程序中的服务器错误.
未能加载文件或程字集'Newtonsot,son,Version=6,0.0.0,Culture=neutral, Publickeytoken=30ad4fe6b2a6aeed"或它的某一依项,找到的程序集清单定义与程家用不匹配。(异常来自 HRESULT:Ox80131040)
说明:执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该措误以及代码中导致着误的出处的详细信息。果学#现息: 9m 0FadEiceo 天东某 e 4RS04.源错误:
17:18.
行行行行行
白
20
ServiceResolverSetSerwiceResolver(new DefaultServiceResolver()):
var config = GlobalConfiguration.Configuration;
NuGetV2WebApiEnabler.UseNuGetV2WebApiFeed(
源文件: D:cxxx.cs 行19程序集加载跟踪:下列信息有助于确定程序集 Newtonsot .Json, Version=6.0.0.0.Cuture=neutral,PublickeyToken=30ad4fe6b2a6aeed"未的办载的原因,
检查Web.config配置里的dependentAssembly相关的包是不是多引用了(重复问题)
IIS发布一下或者发布到服务器
我这里就IIS本机发布
发布前Web.config内apikey的地方配一下这个秘钥信息
发布看结果依旧成功
对于后面如何将自己的nuget包存入到指定的文件路径还是再Web.config里配置路径,没有配置的话默认是在项目根目录的Packages里
指定的话这里加上去路径
Change the path to the packages folder. Default is ~/Packages.
This can be a virtual or physical path.
-->
<add key="packagesPath" value="D:/RT" />
<!--