Я использовал WCC DataContract и DataContractSerializer для чтения / записи объектов в файлы XML. Мы хотим перейти на использование версии Ruby on Rails, и я хотел выяснить, что я мог бы использовать. У нас есть объекты, которые имеют такие атрибуты (это просто примеры, а не точные объекты):
[DataContract]
public class City
{
[DataMember]
public string Name { get; set; }
[DataMember]
public string Location { get; set; }
}
[DataContract]
public class Person
{
[DataMember]
public string Name { get; set; }
[DataMember]
public City Home {get; set; }
// returns true if the city is near me
public bool NearMe(City myCity) { // insert code to compare cities }
}
и код для чтения в объектах:
DataContractSerializer ds = new DataContractSerializer(typeof(Person));
using (Stream s = File.OpenRead("person1.xml"))
{
Person p = (Person) ds.ReadObject(s);
}
Каков эквивалентный формат для того же самого в Ruby / Rails? Как мне определить объекты? Какой метод я могу прочитать их из файла XML? Я видел, что я могу попытаться определить все как модель, а затем создать внутреннюю базу данных для каждого объекта. Есть ли в любом случае сделать это без создания всех таблиц БД, так как нам не нужны БД для этого приложения, а просто читают статический набор объектов из файлов XML.