Реферат: Введение в ObjectSpaces
}
ObjectEngine
Класс ObjectEngine лежит в основе ObjectSpaces и реализует механизмы взаимодействия с источником данных. В большинстве случаев ObjectEngine напрямую не используется, но в ситуациях, когда необходимо выполнить OPath-запрос или сохранить объект в БД в обход основной функциональности ObjectSpaces и с минимальными издержками – использование ObjectEngine может пригодиться.
// Небольшой пример использования функциональности ObjectEngine public static void Main() { using (SqlConnection conn = new SqlConnection( "Data Source=tim; Integrated Security=SSPI; Database=northwind")) { conn.Open(); // Учитывая, что ObjectEngine – это “низкоуровневый” класс, некоторую часть // подготовительной работы приходится выполнять самостоятельно. ObjectContext context = new CommonObjectContext(new ObjectSchema("osd.xml")); MappingSchema msd = new MappingSchema("map.xml"); ObjectSchema osd = new ObjectSchema("osd.xml"); ObjectSources sources = new ObjectSources(); sources.Add("NorthwindRSD", conn); // Создаем OPath запрос и читаем данные из БД ObjectExpression expr = OPath.Parse( new ObjectQuery(typeof(Customer), "", ""), osd); // Еще одна издержка ObjectEngine – перед использованием OPath // запрос надо “компилировать”. CompiledQuery query = expr.Compile(msd); Customer cust = null; // Выполняем OPath-запрос, используя “объектный” курсор. using (ObjectReader reader = ObjectEngine.GetObjectReader(sources, context, query, new object[] { })) { К-во Просмотров: 837
Бесплатно скачать Реферат: Введение в ObjectSpaces
|