Serialización en C # sin usar el sistema de archivos
Tengo una simple matriz 2D de cadenas y me gustaría incluirla en un SPFieldMultiLineText en MOSS. Esto se asigna a un campo de base de datos ntext.
Sé que puedo serializar a XML y almacenar en el sistema de archivos, pero me gustaría serializar sin tocar el sistema de archivos.
public override void ItemAdding(SPItemEventProperties properties)
{
// build the array
List<List<string>> matrix = new List<List<string>>();
/*
* populating the array is snipped, works fine
*/
// now stick this matrix into the field in my list item
properties.AfterProperties["myNoteField"] = matrix; // throws an error
}
Parece que debería poder hacer algo como esto:
XmlSerializer s = new XmlSerializer(typeof(List<List<string>>));
properties.AfterProperties["myNoteField"] = s.Serialize.ToString();
Pero eso no funciona. Todos los ejemplos que he encontrado demuestran escribir en un archivo de texto.