Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.NET XML序列化与Unity中的静态类:InvalidOperationException_.net_Unity3d_Xml Serialization_Unityscript - Fatal编程技术网

.NET XML序列化与Unity中的静态类:InvalidOperationException

.NET XML序列化与Unity中的静态类:InvalidOperationException,.net,unity3d,xml-serialization,unityscript,.net,Unity3d,Xml Serialization,Unityscript,我使用Javascript和Unity将数据保存为XML。 我正在导入.NET库的一部分,以提供XML序列化功能 我正在尝试将我的静态Global类转换为XML 我明白了 InvalidOperationException: The type of the argument object 'System.MonoType' is not primitive. 尝试序列化此文件时 static class Global extends System.Object{ class buildin

我使用Javascript和Unity将数据保存为XML。 我正在导入.NET库的一部分,以提供XML序列化功能

我正在尝试将我的静态
Global
类转换为XML

我明白了

 InvalidOperationException: The type of the argument object 'System.MonoType' is not primitive.
尝试序列化此文件时

static class Global extends System.Object{ 
class buildingData{
    static var posX:int[]=new int[100];
    static var posY:int[]=new int[100];
    static var posZ:int[]=new int[100];
    static var name:String[]=new String[100];
    static var type:int[]=new int[100];
    static var id:int[]=new int[100];
}

class peopleData{
    ///etc.
通过这种方式:

var xs : XmlSerializer = new XmlSerializer(typeof(Global));
xs.Serialize(xmlTextWriter, Global);

问题是我的全局类是静态的吗?

MonoType
Type
的子类,表示类型系统。如果
Global
是一种类型,我很惊讶
xs.Serialize(xmlTextWriter,Global)
甚至可以编译,因为
XmlSerializer
需要一个对象,而
Global
那里(而不是
typeof(Global)
)甚至不应该解决AFAIK

但是:实际上,您不能使用对象序列化程序来序列化静态。但正如我读到的,
Global
甚至没有任何状态。基本上-给它一些实际的对象实例