Bitzsoft.Integrations.ProjectManagement 1.0.4

dotnet add package Bitzsoft.Integrations.ProjectManagement --version 1.0.4
                    
NuGet\Install-Package Bitzsoft.Integrations.ProjectManagement -Version 1.0.4
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Bitzsoft.Integrations.ProjectManagement" Version="1.0.4" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Bitzsoft.Integrations.ProjectManagement" Version="1.0.4" />
                    
Directory.Packages.props
<PackageReference Include="Bitzsoft.Integrations.ProjectManagement" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Bitzsoft.Integrations.ProjectManagement --version 1.0.4
                    
#r "nuget: Bitzsoft.Integrations.ProjectManagement, 1.0.4"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Bitzsoft.Integrations.ProjectManagement@1.0.4
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Bitzsoft.Integrations.ProjectManagement&version=1.0.4
                    
Install as a Cake Addin
#tool nuget:?package=Bitzsoft.Integrations.ProjectManagement&version=1.0.4
                    
Install as a Cake Tool

Bitzsoft.Integrations.ProjectManagement

项目管理抽象层 — 统一接口定义、基础模型与结果包装。

屏蔽 Asana、Teambition、Jira Cloud、Jira Data Center、Azure DevOps、TAPD、GitHub、GitLab、Gitee、Monday、Trello、ONES、PingCode、阿里云效等供应商差异,提供一致的项目查询与任务创建、查询、更新、完成、列表查询 API。

功能特性

  • 统一供应商接口 IProjectManagementService:8 个异步方法覆盖项目与任务全生命周期
  • 统一结果包装PmResult 携带成功标志与错误信息
  • 统一异常 ProjectManagementException:封装供应商标识、错误码与请求 ID
  • 不可变模型设计:集合返回 List<T>,属性使用 init 保证只读

安装

dotnet add package Bitzsoft.Integrations.ProjectManagement
<PackageReference Include="Bitzsoft.Integrations.ProjectManagement" Version="1.0.0" />

接口

IProjectManagementService

统一的项目管理供应商接口。

方法 返回类型 说明
ProviderName string 供应商标识(如 AsanaTeambitionJiraCloud
CreateProjectAsync Task<PmProject> 创建项目,返回项目信息
ListProjectsAsync Task<List<PmProject>> 查询项目列表
CreateTaskAsync Task<PmTask> 创建任务,返回任务信息
GetTaskAsync Task<PmTask> 查询单个任务
UpdateTaskAsync Task<PmResult> 更新任务信息
CompleteTaskAsync Task<PmResult> 完成任务
ListTasksAsync Task<List<PmTask>> 分页查询任务列表

说明:部分供应商(如 Jira Cloud、Jira Data Center 等)的项目创建需管理员级 API,其连接器重点聚焦于任务(Issue / Work Item)全生命周期管理(创建、详情获取、信息更新、工作流状态跃迁与列表检索)。

核心模型

关键字段 说明
CreateProjectRequest NameDescriptionDueDate 创建项目请求
CreateTaskRequest ProjectIdNameDescriptionAssigneeIdDueDatePriority 创建任务请求
UpdateTaskRequest TaskIdNameDescriptionAssigneeIdDueDatePriority 更新任务请求
ListTasksRequest ProjectIdStatusAssigneeIdPageIndexPageSize 任务列表查询参数
PmProject ProjectIdNameDescriptionStatusOwnerIdCreatedAtDueDate 项目信息
PmTask TaskIdProjectIdNameDescriptionStatusAssigneeIdDueDatePriorityTags 任务信息
PmResult SuccessErrorMessage 操作结果
ProjectManagementException 统一异常(继承 IntegrationException

枚举

枚举 说明
TaskStatus 任务状态:Todo / InProgress / Completed / Cancelled
TaskPriority 任务优先级:Low / Medium / High
ProjectStatus 项目状态:Active / OnHold / Completed / Archived

使用示例

抽象层本身只定义接口与模型,具体实现由各供应商包提供。以下示例假设已注册某个供应商实现:

using System;
using System.Threading;
using System.Threading.Tasks;
using Bitzsoft.Integrations.ProjectManagement;
using Bitzsoft.Integrations.ProjectManagement.Dtos;
using TaskStatus = Bitzsoft.Integrations.ProjectManagement.Dtos.TaskStatus;

public class TaskBoardService
{
    private readonly IProjectManagementService _pm;

    public TaskBoardService(IProjectManagementService pm)
    {
        _pm = pm;
    }

    public async Task<string> PlanTaskAsync(string projectId, string name, string assigneeId, CancellationToken cancellationToken = default)
    {
        var task = await _pm.CreateTaskAsync(new CreateTaskRequest
        {
            ProjectId = projectId,
            Name = name,
            AssigneeId = assigneeId,
            DueDate = DateTimeOffset.UtcNow.AddDays(7),
            Priority = TaskPriority.Medium
        }, cancellationToken);

        return task.TaskId;
    }

    public Task<PmResult> CloseTaskAsync(string taskId, CancellationToken cancellationToken = default)
        => _pm.CompleteTaskAsync(taskId, cancellationToken);
}

多供应商解析

同一应用注册多个供应商时,通过 IIntegrationProviderResolver<IProjectManagementService> 按供应商 ID 解析:

using Bitzsoft.Integrations.Core;
using Bitzsoft.Integrations.ProjectManagement;
using Microsoft.Extensions.DependencyInjection;

var resolver = serviceProvider.GetRequiredService<IIntegrationProviderResolver<IProjectManagementService>>();
var asana = resolver.GetRequired("asana");
var task = await asana.CreateTaskAsync(request);

依赖

相关包

供应商 / 组件 包名 说明
统一抽象 Bitzsoft.Integrations.ProjectManagement 统一接口定义、基础模型与结果包装
Asana Bitzsoft.Integrations.ProjectManagement.Asana Asana 任务与项目协作连接器
Azure DevOps Bitzsoft.Integrations.ProjectManagement.AzureDevOps 微软 Azure DevOps Boards 敏捷工单与 WIQL 检索
GitHub Bitzsoft.Integrations.ProjectManagement.GitHub GitHub Issues / PR / 里程碑与协同
GitLab Bitzsoft.Integrations.ProjectManagement.GitLab GitLab Issues / Notes / MR 敏捷协同
Gitee Bitzsoft.Integrations.ProjectManagement.Gitee 码云 Gitee Issues / 状态流转与工单协同
Jira Cloud Bitzsoft.Integrations.ProjectManagement.JiraCloud Atlassian Jira Cloud 任务生命周期与工作流流转
Jira Data Center Bitzsoft.Integrations.ProjectManagement.JiraDataCenter Jira Server / Data Center 私有部署与 JQL/Transitions
Monday Bitzsoft.Integrations.ProjectManagement.Monday monday.com 工作流与任务管理
ONES Bitzsoft.Integrations.ProjectManagement.Ones ONES 企业级敏捷研发管理
PingCode Bitzsoft.Integrations.ProjectManagement.PingCode PingCode 研发项目与工单协作
TAPD Bitzsoft.Integrations.ProjectManagement.Tapd 腾讯敏捷协作平台(需求/缺陷/任务三态工作流)
Teambition Bitzsoft.Integrations.ProjectManagement.Teambition 阿里巴巴 Teambition 协同连接器
Trello Bitzsoft.Integrations.ProjectManagement.Trello Trello 看板与卡片协同
阿里云效 Bitzsoft.Integrations.ProjectManagement.Yunxiao 阿里云效 Projex 空间协作与工作项/合并请求
聚合包 Bitzsoft.Integrations.ProjectManagement.All 一键聚合注册全部 14 家项目管理供应商
基础工具库 Bitzsoft.Integrations.Core 核心基座与供应商解析器 (IIntegrationProviderResolver<T>)
Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (15)

Showing the top 5 NuGet packages that depend on Bitzsoft.Integrations.ProjectManagement:

Package Downloads
Bitzsoft.Integrations.ProjectManagement.Monday

monday.com 项目管理实现 — API Key Bearer 鉴权 + GraphQL,实现 IProjectManagementService 统一接口,支持项目创建/列表与任务 CRUD/完成/列表

Bitzsoft.Integrations.ProjectManagement.Asana

Asana 项目管理实现 — Personal Access Token Bearer 鉴权 + HttpClient,实现 IProjectManagementService 统一接口,支持项目创建/列表与任务 CRUD/完成/列表

Bitzsoft.Integrations.ProjectManagement.Teambition

Teambition(钉钉旗下)项目管理实现 — AppKey + AppSecret 换 access_token(query 注入)鉴权 + HttpClient,实现 IProjectManagementService 统一接口,支持项目创建/列表与任务 CRUD/完成/列表

Bitzsoft.Integrations.ProjectManagement.Trello

Trello 项目管理实现 — API Key + Token query 参数鉴权 + HttpClient,实现 IProjectManagementService 统一接口,支持项目创建/列表与任务 CRUD/完成/列表

Bitzsoft.Integrations.ProjectManagement.Ones

ONES 项目管理实现 — 用户 token 登录认证 Bearer 鉴权 + HttpClient,实现 IProjectManagementService 统一接口,支持项目创建/列表与任务 CRUD/完成/列表

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.4 108 9/23/2026
1.0.2 296 8/29/2026
1.0.1 348 8/3/2026
1.0.0 342 8/2/2026