电子商务网站建设核心,晨光科技 网站建设,深圳网上推广怎么做,seo推广名词解释点击上方蓝字关注“汪宇杰博客”NuGet是.NET世界的包管理器#xff0c;有官方的nuget.org#xff0c;也允许构建公司和私人的服务器。在.NET Core的时代#xff0c;封装一个NuGet包比以往更容易#xff0c;我们来看看吧#xff01;NuGet账号如果你想和微软一起予力众生有官方的nuget.org也允许构建公司和私人的服务器。在.NET Core的时代封装一个NuGet包比以往更容易我们来看看吧NuGet账号如果你想和微软一起予力众生让全世界的.NET程序员都能用上你的包远离996那么你就需要有个nuget.org的账号用来上传自己的包。nuget.org可以用微软账号直接登录免去注册的麻烦。登录以后建议大家先去搞一套API Key并记在OneNote里虽然本文讨论的范围内不需要使用这套Key但如果以后你希望通过NuGet CLI或自动化工具如Azure DevOps发布NuGet包的话就用得上它。使用 VS2019 创建NuGet包以我的一个类库Edi.Blog.Pingback为例开发完成以后在项目文件上点右键打开属性对话框。在Package选项卡中勾选 Generate NuGet package on build。并且填写一些必要信息。Package id 是最重要的即最终用户安装你的NuGet包时使用的ID。这和Product是不一样的。最经典的例子就是Json.NET它的Package id是Newtonsoft.Json而不是Json.NET。一般为了避免混淆的情况我建议大家保持Package id和Product名称一致。其次是版本号Package version是最终会显示在nuget.org网页上的版本也是通过NuGet CLI指定安装版本时候所用的版本。为了避免混淆也建议与Assembly/File version保持一致。其他信息可以根据需要填写越详细越好。比如我的这个包是在NuGet用MIT协议开源的我就可以填写仓库地址Repository URL以及协议。就算不是开源的包也建议大家填写协议。不然最终上传nuget.org之后会报一个警告。其实在VS界面上进行的这些操作最终是反映到工程文件里的Edi.Blog.Pingback.csproj也就是说如果你是个VSCode党也可以通过手工编辑工程文件的方式来完成这一系列的设置。PropertyGroup TargetFrameworknetcoreapp2.2/TargetFramework GeneratePackageOnBuildtrue/GeneratePackageOnBuild AuthorsEdi Wang/Authors Companyedi.wang/Company DescriptionPingback sender and receiver used in my blog system./Description RepositoryUrlhttps://github.com/EdiWang/Edi.Blog.Pingback/RepositoryUrl PackageProjectUrlhttps://edi.wang/PackageProjectUrl AssemblyVersion10.1.0.0/AssemblyVersion FileVersion10.1.0.0/FileVersion Version10.1.0/Version PackageTagsBlog, Pingback/PackageTags PackageLicenseExpressionMIT/PackageLicenseExpression/PropertyGroup接下来切换到Release模式编译一把就可以在bin\release下生成一个nupkg格式的包了使用Release是因为面对的是生产环境希望最终用户使用编译器优化过的dll。// 其实一个NuGet包可以同时包含Release和Debug两个版本的dll不在本文讨论范围内。上传到 nuget.org最简单的方式是通过网页上传。在nuget.org的用户菜单下面选择Upload Package。据说我们.NET程序员都是拖控件的所以我们只能把刚才编译出来的nupkg文件拖到网页中完成上传。在确认信息无误后点击页面最下方的 Submit 按钮提交审核。接下来你会看到审核的状态。最初是 Validating审核通过后会变成 Listed。一般5分钟就可以。但是在Listed之后还是会有一个警告意思是服务器的索引还没建完用户搜不到该版本的包。如果心急可以等到显示Listed后通过NuGet CLI或者编辑project文件指定具体版本号去安装。等警告消失后你的包就完完整整的ready了赶紧向全世界分享你的成果吧~相关工具推荐NuGet命令行工具https://www.nuget.org/downloadsNuGet Package ExplorerWindows下的可视化NuGet包编辑器可以解剖、编辑、上传NuGet包https://www.microsoft.com/store/productId/9WZDNCRDMDM3.NET社区新闻深度好文欢迎访问公众号文章汇总 http://www.csharpkit.com