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.

Respuestas a la pregunta(4)

Su respuesta a la pregunta