Skip to content

Repository files navigation

NugetManagerGUI

私有化的 NuGet 包管理图形界面工具,用于简化 NuGet 包的管理和操作。

功能特性

解决方案管理

  • 加载解决方案:支持加载 .sln 文件,自动识别解决方案中的所有项目
  • 项目列表显示:清晰展示解决方案中的项目列表,支持多选操作

打包功能

  • 批量打包:支持对选中的项目或所有项目进行批量打包
  • 自定义版本:支持指定自定义版本号进行打包
  • 输出目录配置:可自定义 NuGet 包的输出目录
  • 打包日志:实时显示打包过程的详细日志信息

NuGet 源管理

  • 源配置:支持配置私有 NuGet 源的 URL 和 API Key
  • 设置持久化:配置信息自动保存到本地,下次启动自动加载

包浏览与管理

  • 包列表浏览:浏览 NuGet 源中的所有包,显示包的基本信息
  • 包搜索:支持按包名搜索 NuGet 源中的包
  • 版本查看:点击包后自动加载该包的所有版本信息(包括预发布版本)
  • 包上传:支持上传 .nupkg 文件到配置的 NuGet 源
  • 包删除:支持删除指定包的特定版本(支持多选批量删除)

技术栈

  • .NET 10 - 基于最新的 .NET 10 框架
  • WPF - Windows Presentation Foundation 桌面应用框架
  • CommunityToolkit.Mvvm (v8.2.0) - MVVM 架构支持,简化视图模型开发
  • HandyControl (v3.5.1) - 现代化 UI 组件库和主题支持
  • NuGet.Protocol (v7.0.1) - NuGet 协议支持,用于与 NuGet 源交互

系统要求

  • Windows 操作系统
  • .NET 10.0 Runtime
  • 需要配置的 NuGet 源(支持 NuGet V3 协议)

使用说明

首次使用

  1. 配置 NuGet 源

    • 启动应用后,点击右上角的 "Settings" 按钮
    • 输入 NuGet 源的 URL(例如:https://your-nuget-server.com/v3/index.json
    • 输入 API Key(如果需要认证)
    • 点击保存
  2. 加载解决方案

    • 点击 "Load Solution" 按钮
    • 选择你的 .sln 解决方案文件
    • 应用会自动解析并显示解决方案中的所有项目

打包项目

  1. 选择项目

    • 在左侧项目列表中,可以选择一个或多个项目(按住 Ctrl 键多选)
    • 或者使用右侧的单选下拉框选择单个项目
  2. 配置打包选项(可选)

    • 自定义版本:输入版本号(如 1.2.3),留空则使用项目文件中的版本
    • 输出目录:指定 .nupkg 文件的输出路径,留空则使用默认路径
  3. 执行打包

    • Pack Selected:打包选中的项目
    • Pack All:打包所有项目
    • 打包日志会显示在底部的日志窗口中

管理 NuGet 包

  1. 浏览包

    • 应用启动时会自动加载 NuGet 源中的所有包
    • 点击 "Refresh" 按钮可以重新加载包列表
  2. 搜索包

    • 在搜索框中输入包名关键词
    • 点击 "Search" 按钮进行搜索
  3. 查看包版本

    • 在包列表中点击某个包
    • 右侧会自动显示该包的所有版本信息
  4. 上传包

    • 点击 "Upload" 按钮
    • 选择要上传的 .nupkg 文件(支持多选)
    • 文件会上传到配置的 NuGet 源
  5. 删除包版本

    • 在包版本列表中,勾选要删除的版本(支持多选)
    • 点击 "Delete Packages" 按钮
    • 确认删除操作(此操作不可恢复)

配置存储

应用的配置信息存储在:

%APPDATA%\NugetManagerGUI\settings.json

配置文件包含:

  • FeedUrl: NuGet 源的 URL
  • ApiKey: API 密钥(可选)

注意事项

  • 删除包版本操作是不可逆的,请谨慎操作
  • 确保 NuGet 源支持 NuGet V3 协议
  • 打包功能需要系统已安装 .NET SDK 并配置了 dotnet 命令
  • API Key 用于上传和删除操作,如果源不需要认证可以留空

About

支持 NuGet 打包、上传、删除指定版本

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages