下载proget
官网
下载地址
免费下载
安装proget
下载完成之后双击安装
选择ProGet
默认选择即可
也可以指定数据库,SQL Server数据库
Server=服务器名;Database=数据库名;User Id=用户名;Password=密码
Server=localhost;Database=ProGet2;User Id=sa;Password=xxxxxx
如果使用iis需要安装hosting
修改项目的应用程序池
耐心等待安装完成
安装完成
查看运行状态
访问http://localhost:8624/
Proget配置
点击获取一个许可密钥
申请完之后就成功了
邮箱将会收到免费的注册码
选择创建第一个feed
新建一个.netstandard2.0的类型,创建一个方法
using System;
namespace ClassLibrary1
{
public class Class1
{
public int Add(int a, int b)
{
return a + b;
}
}
}
编辑项目文件
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<PackageId>Common.Express</PackageId>
<Version>1.1.2</Version>
<Authors>作者</Authors>
<Company>公司</Company>
<Product>物流</Product>
<Title></Title>
<Description>
简单介绍一下这个包。这是一个对接了各个物流模块封装一个物流模块包。
</Description>
<PackageTags>物流模块;物流;顺丰;申通;圆通</PackageTags>
</PropertyGroup>
</Project>
找到包所在位置,执行dotnet pack
打包
dotnet pack详细命令
查看打包好的nuget包,打开proget,选择上传包
选择从硬盘上传
点击确定,就会多了一个包
使用
复制apiurl
打开vs选项,添加程序包源
选择一个项目,管理nuget包
安装完成之后测试使用
上传引用其他包的包
类库安装newtonsoft.json
然后添加序列化方法
using Newtonsoft.Json;
using System;
namespace ClassLibrary1
{
public class Class1
{
public int Add(int a, int b)
{
return a + b;
}
public string ObjectSerize(object obj)
{
return JsonConvert.SerializeObject(obj);
}
}
}
打包发布,点击更新就会显示依赖项
增加https
如果不增加https可以使用,但是会报警告不太好,所以修改为iis配置,然后给iis配置https
选择服务器证书
选择创建自签名证书
创建完成之后选择Proget网站,右键编辑绑定
添加网站绑定
实现了https的访问
nuget.exe上传
NuGet.exe push <package path> [API key] -Source http://localhost:8624/nuget/testrepository/
# 没有api key所以不写
但是出现了405错误
这是iis的问题导致的
修改web.config
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<remove name="WebDAV" />
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath=".\ProGet.Service.exe"
arguments="iis-hosted"
stdoutLogEnabled="false"
hostingModel="inprocess" />
<security>
<requestFiltering allowDoubleEscaping="true">
<requestLimits maxAllowedContentLength="4294967295" maxQueryString="1048576" maxUrl="1048576" />
<fileExtensions allowUnlisted="true">
<clear />
</fileExtensions>
</requestFiltering>
</security>
<modules>
<remove name="WebDAVModule" />
</modules>
</system.webServer>
</location>
</configuration>
重启iis
上传成功,然后查看