在c# unity中添加NFT元数据的属性



我试图在c#中添加一些数据到下面代码的属性参数,但每次它都给我NullObjectRefrence异常。如果有人知道这件事,请告诉我。

public class RootObject
{
public string description;
public string external_url;
public string image;
public string name;
public Attribute[] attributes;

}
[System.Serializable]
public class Attribute
{

public string trait_type;
public string value;

}

在下面的updatethePlayerData()函数中,我试图添加trait_type的值及其相应的值。

public void updatethePlayerData()
{
RootObject rootObject = new RootObject();
rootObject.description = "aaa";
rootObject.image = "bbb";
rootObject.external_url = "ccc";
rootObject.name = "dddd";
rootObject.attributes[0].trait_type = "character_class";
rootObject.attributes[0].value = "name of cahracter";


}

我终于找到了解决办法。

  1. 在rooject "类将属性数组更改为如下列表:
public List <Attribute> attributes;
  1. 在调用函数中创建一个"属性"分类如下:
Attribute attribute = new Attribute();

现在我可以给列表赋值如下:

attribute.trait_type = "Some Value";

希望这有助于如果有人环顾四周!

最新更新