【发布时间】:2014-05-20 09:47:46
【问题描述】:
我正在尝试使用 silverlight 5 和 c# 将 Object 转换为 xml,但出现以下错误:
Error 1 'System.Text.Encoding.GetString(byte[])' is inaccessible due to its protection level
对应行:
return utf8.GetString(mem.ToArray());
在我的 Xml.cs 类中
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Xml.Serialization;
using System.IO;
using System.Text;
namespace SliderLastTry
{
public static class Xml
{
public static string ToXml(this object objectToSerialize)
{
var mem = new MemoryStream();
var ser = new XmlSerializer(objectToSerialize.GetType());
ser.Serialize(mem, objectToSerialize);
var utf8 = new UTF8Encoding();
return utf8.GetString(mem.ToArray());
}
}
}
Paramter.cs 是:
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
namespace SliderLastTry
{
public class Parameter
{
public string Name {get; set; }
}
}
包含类的主函数是:
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
namespace SliderLastTry
{
public static class ControlClass
{
public static void Main()
{
Parameter pram = new Parameter();
pram.ToXml();
}
}
}
有人可以帮我解决我的错误吗?
【问题讨论】:
-
我在这里复制了你的代码,没有错误,不是在构建时,不是在执行时。
-
我用的是silverlight5 c#是个问题。
-
我不知道 Silverlight 上下文,我只是在使用控制台应用程序。
标签: c# .net serialization xml-serialization xmlserializer