NuGet使用方法

简介: 如果你使用过VS2010.net,那么你应该知道2010中有个插件管理器,可以在插件管理器中添加NuGet,那么NuGet有什么用?他可以你每个版本的程序打包,每个版本的程序引用了 那个组件,组件是什么版本,他都准确的记录在打包的文件中,以备下次引用时一起插入到项目中。

如果你使用过VS2010.net,那么你应该知道2010中有个插件管理器,可以在插件管理器中添加NuGet,那么NuGet有什么用?他可以你每个版本的程序打包,每个版本的程序引用了

那个组件,组件是什么版本,他都准确的记录在打包的文件中,以备下次引用时一起插入到项目中。像我们原来把一些组件插入到项目中时,都是把一些引用的文件插入引用N次才

能正常使用,有他了,你只需要在PM中输入 Install-Package 组件名称 就可以完美引用了。
NuGet的使用方式有两种,一种是对于个人在自己的电脑上使用。另一种就是公司内使用,搭建一台服务器通过WEB自由使用共享组件。
详情配置请参考“http://archive.cnblogs.com/a/2034508/”,我个人认为这个是最为简单的方法。
你也可以参考一下这个“http://www.cnblogs.com/durongjian/archive/2011/06/30/2094342.html”,这个稍微复杂一些。

有需要用的朋友可以在此处下载:http://nuget.codeplex.com。

另外我自己写了个批处理文件在此贴上仅供参考:


@echo off
@REM 项目名称,注意:.csproj些文件名称。
@set ProjectName=Jayrock.Json

 

@REM 打包后的NuGet服务器保存路径。
@set PacksPath=D:\wwwroot\NuGet\NuGetSVR\Packages\

 

@REM NuGet.exe应用程序保存的位置,因为批处理文件是把NuGet复制到当前项目下在进行编译的。
@set NuGetPath=D:\wwwroot\NuGet\NuGetSVR

 

@REM 判断NuGet文件是否存在。
@if not exist "%NuGetPath%\NuGet.exe" (
 echo NuGet.exe 文件不存在,请检查文件是否有效。
 @goto BuildEnd
)

 

@if not exist "NuGet.exe" copy "%NuGetPath%\NuGet.exe" .\NuGet.exe

 

@REM 自动生成nuspec文件,如果bin\Debug\已经生成DLL文件,则按照DLL的信息生成,否则默认。
@if not exist "%ProjectName%.nuspec" (
 @if exist "bin\Debug\%ProjectName%.dll" NuGet spec -a bin\Debug\%ProjectName%.dll
 @if not exist "bin\Debug\%ProjectName%.dll" (
  NuGet spec
  echo 请填写完整 "%ProjectName%.nuspec" 文件,在次执行 build.bat 进行编译!
  @goto BuildEnd
 )
)

 

@if not exist "%PacksPath%%ProjectName%" md "%PacksPath%%ProjectName%"

 

@REM 先编译出Release版本,在开始打包文件。
NuGet pack -o %PacksPath%%ProjectName% -build -Properties configuration=release

 

:BuildEnd
echo. & pause


以下是参配置过程中发现的错误及解决方法

1. 当前版本为 v1.4,发生“远程服务器返回错误: (404) 未找到”错误?
   此问题基本都发生在低于IIS7.0版本的服务器上,在上面的两个参考Blog中他们使用的都是IIS7.0的版本,可能不存在此问题,所以两位作者都没提到此问题。
   在IIS的当前网站中添加MIME可以解决此问题,操作步骤如下:
   IIS ==》当前网站 ==》右键属性 ==》HTTP 头 ==》点击“MIME 类型” ==》点击“新建” ==》扩展名“.nupkg”,类型“application/zip”

 

2. 当前版本为 v1.5,发生“远程服务器返回错误: (404) 未找到”错误?
   请先参考问题1的解决方法,如果还不行请安装ASP.NET 中执行 URL 重写组件,下载地址为:http://download.microsoft.com/download/0/4/6/0463611e-a3f9-490d-a08c-877a83b797cf/MSDNURLRewriting.msi

学习交流群:364976091
相关文章
|
存储 运维 关系型数据库
PolarDB产品使用问题之是否可以私有化部署
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
833 2
|
9月前
|
存储 机器学习/深度学习 人工智能
【AI系统】微分计算模式
本文深入探讨了自动微分技术,这是AI框架中的核心功能。自动微分分为前向微分和后向微分两种模式,主要通过雅克比矩阵实现。前向模式适用于输出维度大于输入的情况,而后向模式则更适合多参数场景,广泛应用于现代AI框架中。文章还详细解释了这两种模式的工作原理、优缺点及应用场景。
259 2
【AI系统】微分计算模式
|
11月前
|
人工智能 JSON 自然语言处理
开源模型+Orchestrating Agents多智能体框架,易用、强大且可控
本文采用开源Qwen2.5-14B-instruct-GGUF来体验多智能体编排和交接,希望在体验多智能体编排和交接框架的同时,一起评估中小参数规模的模型(14B)能否较好的完成多智能体任务。
|
开发框架 前端开发 Java
【Spring】Spring框架介绍,功能模块,容器知识和有关Spring的生态圈的详细讲解
【Spring】Spring框架介绍,功能模块,容器知识和有关Spring的生态圈的详细讲解
391 0
|
编解码
FFT_频谱分析(数字信号处理)
用FFT对信号作频谱分析是学习数字信号处理的重要内容。经常需要进行谱分析的信号是模拟信号和时域离散信号。对信号进行谱分析的重点在于频谱分辨率及分析误差。频谱分辨率D和频谱分析的点数N直接相关,其分辨率为2π/N 。因此2π/N≤D,可以据这个公式确定频率的分辨率。 FFT分析频谱的误差在于得到的是离散谱,而信号(非周期信号)是连续谱,只有当N较大时,离散谱的包络才能逼近于连续谱。因此N要适当选择大一些。 周期信号的频谱是离散谱,只有用整数倍周期的长度作FFT,得到的离散谱才能代表周期信号的频谱。如果不知道信号周期,可以尽量选择信号的观察时间长一些。 对模拟信号进行谱分析时,首先要按照
921 1
FFT_频谱分析(数字信号处理)
|
存储 SQL 分布式计算
数据湖架构及概念简介
本文整理自阿里云开源大数据技术专家陈鑫伟在7月17日阿里云数据湖技术专场交流会的分享。
3792 0
数据湖架构及概念简介
|
Python
Python tkinter 初探Toplevel控件搭建父子窗口
Python tkinter 初探Toplevel控件搭建父子窗口
398 0
Python tkinter 初探Toplevel控件搭建父子窗口
|
供应链 安全 区块链
蚂蚁区块链有哪些应用场景
蚂蚁区块链有哪些应用场景
767 0
|
存储 弹性计算 容灾
云端有什么优势
云端有什么优势
|
Java
【报错】String cannot be resolved to a type解决方案
【报错】String cannot be resolved to a type解决方案
567 1

热门文章

最新文章