Storing and reading a list of strings as a property on a MVC model

In some cases you will  have a model with some property's which are array's or list of objects wich has to be stored in the database. One option is to create a seperate model for this and store it in it's own table. But if you know that the amount of objects to be stored are not that much maybe it's nicer just to serialize the object and store it like that?
Model with the property Dimensions wich is just a list of string:

    
public class Rapport
    {
        [Column]
        public int RapportId { get; set; }
        [Column]
        public int  KlantId { get; set; }
        [Column]
        public string ProfileId { get; set; }
        [Column]
        public string Rapportnaam { get; set; }
        [Column]
        [AllowHtml]
        public string Metrics { get; set; }
        [Column]
        [AllowHtml]
        public string Dimensions { get; set; }
}

The list of string dimensionList property wich serialize the list of string to the dimension property to save it, and deserialize the return value to a list of string:

        public List DimensionsList {
            get
            {
                if (!string.IsNullOrEmpty(Dimensions))
                {
                    XmlSerializer serializer = new XmlSerializer(typeof(List));
                    XmlReader xmlReader = XmlReader.Create(new System.IO.StringReader(Dimensions));
                    return (List)serializer.Deserialize(xmlReader);
                }
                else
                {
                    return new List(){"leeg"};
                }
            }
            set
            {
                XmlSerializer serializer = new XmlSerializer(value.GetType());
                var output = new StringBuilder ();
                XmlWriter xmlWriter = XmlWriter.Create(output);
                serializer.Serialize(xmlWriter, value);
                Dimensions = output.ToString();

            }
        }

Now you can populate a dropdownlist in your view with the values:

            <h3>Nieuwe Dimensions:</h3>
            @using (Ajax.BeginForm("AddDimension", "Rapport", new AjaxOptions { UpdateTargetId = "dimensions" }))
            {
                @Html.DropDownList("Rapport.dimension", Model.Dimensions)
                @Html.HiddenFor(model => model.Rapport.RapportId)
                <p>
                    <input type="submit" value="Voer in" />
                </p>
            }

{{opmerking.Naam}}:

{{opmerking.OpmerkingText}}

            

Saving your comment....

Naam is verplicht!
Email is verplicht!
Opmerking is verplicht!