Files
XplorePlane/XP.Hardware.RaySource/Abstractions/XRayResult.cs
T

57 lines
2.0 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace XP.Hardware.RaySource.Abstractions
{
/// <summary>
/// 射线源操作结果封装类 | X-Ray Source Operation Result Wrapper
/// 用于统一返回操作状态、错误信息和数据 | Unified return of operation status, error messages, and data
/// </summary>
public class XRayResult
{
/// <summary>
/// 操作是否成功 | Operation success status
/// </summary>
public bool Success { get; set; }
/// <summary>
/// 错误消息(成功时为null| Error message (null when successful)
/// </summary>
public string ErrorMessage { get; set; }
/// <summary>
/// 操作返回的数据 | Operation return data
/// </summary>
public object Data { get; set; }
/// <summary>
/// 创建成功结果 | Create success result
/// </summary>
/// <param name="data">返回数据 | Return data</param>
/// <returns>成功结果对象 | Success result object</returns>
public static XRayResult Ok(object data = null) =>
new XRayResult { Success = true, Data = data };
/// <summary>
/// 创建错误结果 | Create error result
/// </summary>
/// <param name="message">错误消息 | Error message</param>
/// <returns>错误结果对象 | Error result object</returns>
public static XRayResult Error(string message) =>
new XRayResult { Success = false, ErrorMessage = message };
/// <summary>
/// 获取浮点数据(带类型安全)| Get float data (type-safe)
/// </summary>
public float GetFloat() => Data != null ? Convert.ToSingle(Data) : 0f;
/// <summary>
/// 获取整数数据(带类型安全)| Get integer data (type-safe)
/// </summary>
public int GetInt() => Data != null ? Convert.ToInt32(Data) : 0;
}
}