Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ozakboy/ozakboy.help
.net core 封裝的語法,把複雜語法簡單化
https://github.com/ozakboy/ozakboy.help
asp-net-core cscharp encapsulation library
Last synced: 12 days ago
JSON representation
.net core 封裝的語法,把複雜語法簡單化
- Host: GitHub
- URL: https://github.com/ozakboy/ozakboy.help
- Owner: ozakboy
- License: mit
- Created: 2023-04-29T04:59:16.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-26T07:51:34.000Z (2 months ago)
- Last Synced: 2024-12-26T11:33:52.078Z (about 1 month ago)
- Topics: asp-net-core, cscharp, encapsulation, library
- Language: C#
- Homepage:
- Size: 34.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ozakboy.Help
[![nuget](https://img.shields.io/badge/nuget-ozakboy.Help-blue)](https://www.nuget.org/packages/ozakboy.Help/) [![github](https://img.shields.io/badge/github-ozakboy.Help-blue)](https://github.com/ozakboy/ozakboy.Help)
## 專案簡介
ozakboy.Help 是一個實用的 .NET 擴展函式庫,旨在簡化開發過程中常用的程式碼操作。本套件封裝了多個常用的擴展方法,讓開發過程更加流暢和高效。
## 支援框架
- .NET Core 3.1
- .NET 6.0
- .NET 7.0## 安裝方式
使用 NuGet Package Manager:
```bash
Install-Package ozakboy.Help
```或使用 .NET CLI:
```bash
dotnet add package ozakboy.Help
```## 功能特色
### 1. 日期時間處理 (DatetimeToTimestampHelp)
- `ToUnixTimestamp`: 將 UTC DateTime 轉換為 Unix 時間戳
- `FromUnixTimestamp`: 將 Unix 時間戳轉換為 UTC DateTime
- `DefulteData`: 取得預設時間 (2000/1/1)### 2. 列舉擴展 (EnumExtensions)
- `GetDescription`: 從列舉常數中獲取描述文字,支援 DescriptionAttribute### 3. JSON 處理 (JsonExtensions)
- `ToJsonString`: 將物件序列化為 JSON 字串
- `FromJsonString`: 將 JSON 字串反序列化為指定的類型### 4. 異常處理 (ErrorMessageException)
自定義的異常處理類,提供:
- 錯誤代碼支援
- 額外資訊儲存
- 完整的序列化支援
- 豐富的建構函式選項## 使用範例
### 日期時間轉換
```csharp
// DateTime 轉 Unix 時間戳
DateTime utcNow = DateTime.UtcNow;
long timestamp = utcNow.ToUnixTimestamp();// Unix 時間戳轉 DateTime
DateTime dateTime = DatetimeToTimestampHelp.FromUnixTimestamp(timestamp);
```### 列舉描述獲取
```csharp
public enum Status
{
[Description("處理中")]
Processing,
[Description("已完成")]
Completed
}Status status = Status.Processing;
string description = status.GetDescription(); // 返回 "處理中"
```### JSON 序列化
```csharp
var obj = new { Name = "測試", Value = 123 };
string json = obj.ToJsonString();var deserializedObj = json.FromJsonString();
```### 異常處理
```csharp
try
{
throw new ErrorMessageException("發生錯誤", "ERR001", new { Details = "額外資訊" });
}
catch (ErrorMessageException ex)
{
Console.WriteLine(ex.ErrorCode); // ERR001
Console.WriteLine(ex.Message); // 發生錯誤
Console.WriteLine(ex.AdditionalInfo); // { Details = "額外資訊" }
}
```## 貢獻指南
歡迎提交 Issue 和 Pull Request 來協助改進這個專案。
## 維護資訊
- 持續維護中
- 定期更新
- 歡迎回報問題## 相關連結
- [NuGet 套件頁面](https://www.nuget.org/packages/ozakboy.Help/)
- [GitHub 儲存庫](https://github.com/ozakboy/ozakboy.Help)