我想反序列化为一种类型,但我只有该类型的字符串表示形式。
我所知道的是该类型实现了ISomething
.
string typeName = "MyClass";
BinaryFormatter binaryFormatter = new BinaryFormatter();
byte[] data = Convert.FromBase64String(serialisedString);
using (MemoryStream memoryStream = new MemoryStream(data, 0, data.Length))
{
return (ISomething)binaryFormatter.Deserialize(memoryStream) as ISomething;
}
但是我在 BinaryFormatter.Deserialize 上得到以下异常:
无法将“System.RuntimeType”类型的对象转换为“MyAssembly.ISomething”类型
如何转换为存储在中的类名typeName
?