オブジェクトをファイルにシリアル化するメソッドを作成したいと考えています。ファイルを読み取ってコンテンツを文字列として取得するよりも。文字列をデータベースに保存し、DB から文字列を読み取り、それをオブジェクトに逆シリアル化します
私はほとんどそれをしましたが、エラーが発生しますthere is no map for object
これは、オブジェクトをシリアル化する方法です
public static String Serialize(Object toSerialize)
{
Random random = new Random();
int randomNumber = random.Next(100000, 1000000000);
String fileName = randomNumber + ".txt";
fileName = "EmployeeInfo.txt";
Stream stream = File.Open(fileName, FileMode.Create);
BinaryFormatter bformatter = new BinaryFormatter();
bformatter.Serialize(stream, toSerialize);
stream.Close();
String fileContent = File.ReadAllText(fileName);
return fileContent;
}
これは、デシリアライズのために文字列をストリームに変換する方法です
String serialized = Serializer.Serialize(user);
MemoryStream mStream = new MemoryStream();
StreamWriter writer = new StreamWriter(mStream);
writer.Write(serialized);
writer.Flush();
mStream.Position = 0;
そして今、逆シリアル化
public static Object Deserialize(Stream stream)
{
Object returnObject;
BinaryFormatter bformatter = new BinaryFormatter();
returnObject = (Object)bformatter.Deserialize(stream);
stream.Close();
return returnObject;
}
どこで間違いを犯していますか?それを機能させるには何を改善すればよいですか?