Files
2025-05-01 07:20:41 +09:00

68 lines
2.3 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
using static System.Runtime.InteropServices.JavaScript.JSType;
namespace GameServer
{
namespace NFT
{
public class NFTInfo
{
[JsonProperty("id")]
public string Id { get; set; } = string.Empty; // NFT Asset 내부 관리 DB의 Key (DB 저장 시 Incremental)
[JsonProperty("projectName")]
public string ProjectName { get; set; } = string.Empty; // 프로젝트 고유 식별자
[JsonProperty("contractAddress")]
public string ContractAddress { get; set; } = string.Empty; // 컨트랙트 주소
[JsonProperty("blockchainNetwork")]
public string BlockchainNetwork { get; set; } = string.Empty; // 블록체인 네트워크 (메인넷 또는 테스트넷)
[JsonProperty("tokenId")]
public Int32 TokenId { get; set; } = 0; // 토큰 ID
[JsonProperty("owner")]
public string Owner { get; set; } = string.Empty; // 소유자
[JsonProperty("name")]
public string Name { get; set; } = string.Empty; // NFT명
[JsonProperty("description")]
public string Description { get; set; } = string.Empty; // 설명
[JsonProperty("imageUrl")]
public string ImageUrl { get; set; } = string.Empty; // Image Resource Url
[JsonProperty("isStaked")]
public Int32 IsStaked { get; set; } = 0; // Staking 상태: 1, 보유 상태: 0
[JsonProperty("attributes")]
public List<Attribute> Attributes { get; set; } = new List<Attribute>(); // 속성 목록
[JsonProperty("unstakingDisabled")]
public Int32 UnstakingDisabled { get; set; } = 0; // 인벤토리의 NFT를 외부지갑으로 전송가능: 1, 인벤토리의 NFT를 외부지갑으로 전송 불가능: 0
}
public class Attribute
{
[JsonProperty("trait_type")]
public string TraitType { get; set; } = string.Empty; // 속성명
[JsonProperty("value")]
public string Value { get; set; } = string.Empty; // 속성값
}
}
}