Como serializar / desserializar classes simples para XML e voltar

Às vezes, eu quero emular dados armazenados de minhas classes sem configurar uma ida e volta ao banco de dados. Por exemplo, digamos que eu tenha as seguintes classes:

public class ShoppingCart
{
    public List<CartItem> Items {get; set;}
    public int UserID { get; set; }
}

public class CartItem
{
    public int SkuID { get; set; }
    public int Quantity  { get; set; }
    public double ExtendedCost  { get; set; }
}

Digamos que eu construa umShoppingCart objeto na memória e deseja "salvá-lo" como um documento XML. Isso é possível através de algum tipo deXDocument.CreateFromPOCO(shoppingCart) método? Que tal na outra direção: existe uma maneira embutida de criar umShoppingCart objeto de um documento XML comonew ShoppingCart(xDoc)?

questionAnswers(4)

yourAnswerToTheQuestion