Да, нормальное решение. Для большей общности можно еще навесить атрибуты на свойства, чтобы можно было использовать разные имена свойств в классе и столбцов в таблице, или какие-то свойства пропускать.
@r@vladimirchelyabinskiy: даже лучше так
var lastTextNode = xdocument.Root.Elements(XName.Get("Text")).LastOrDefault();
if(lastTextNode != null)
lastTextNode.AddAfterSelf(new XElement(XName.Get("Text"),
new XAttribute("a", textBox1.Text),
new XAttribute("b", textBox2.Text)));
vladimirchelyabinskiy:
xdocument.Root.Element(XName.Get("Text"))
.AddAfterSelf(new XElement(XName.Get("Text"),
new XAttribute("a", textBox1.Text),
new XAttribute("b", textBox2.Text)));