【发布时间】:2013-12-14 23:55:41
【问题描述】:
我正在尝试将我的列表保存到一个 XML 文件中,以便稍后在重新打开程序时再次加载数据。
这是我尝试保存数据的代码:
public static void SerializeToXml<T>(T obj, string fileName)
{
using (var fileStream = new FileStream(@"C:\\Users\\Kevin\\Desktop\\Save.XML", FileMode.Create))
{
var ser = new XmlSerializer(typeof(T));
ser.Serialize(fileStream, obj);
fileStream.Close();
}
}
我使用这段代码来调用函数:
Saving.SerializeToXml<List<Vara>>(minaVaror, @"C:\\Users\\Kevin\\Desktop\\Save.XML");
但是,当我单击按钮尝试保存数据时,程序崩溃了,我留下了这个错误/警告:
Barline_1.Vara is inaccessible due to its protection level. Only public types can be processed.
这是它抱怨的代码行:
var ser = new XmlSerializer(typeof(T));
有什么想法可能是错的吗?
【问题讨论】:
-
作为一个站点说明:
fileName在SerializeToXml中有什么用? -
您是否认为
Barline_1的定义与问题无关,所以没有发布?