我试图在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";
}
我终于找到了解决办法。
- 在rooject "类将属性数组更改为如下列表:
public List <Attribute> attributes;
- 在调用函数中创建一个"属性"分类如下:
Attribute attribute = new Attribute();
现在我可以给列表赋值如下:
attribute.trait_type = "Some Value";
希望这有助于如果有人环顾四周!