Объектные интерфейсы (.NET) «Школа Инноваций InterSystems 2007»
Тема
Унифицированная архитектура
Что нужно для работы Ссылка в проекте на CacheClient.dll Ссылка в проекте на CacheClient.dll Использование пространств имен Использование пространств имен –using InterSystems.Data.CacheClient; –using InterSystems.Data.CacheTypes; Оба пространства содержатся в CacheClient.dll Оба пространства содержатся в CacheClient.dll
Добавление ссылки
Подключение к серверу Cache Использование объекта CacheConnection Использование объекта CacheConnection Метод ConnectDlg() Метод ConnectDlg()
Подключение к серверу Cache CacheConnection CacheConnect; CacheConnection CacheConnect; try { try { CacheConnect = new CacheConnection(); CacheConnect = new CacheConnection(); CacheConnect.ConnectionString ="Server = localhost; Port = 56773; Namespace = SAMPLES;" CacheConnect.ConnectionString ="Server = localhost; Port = 56773; Namespace = SAMPLES;" + " Password = SYS; User ID = _SYSTEM;"; /* CacheConnect.ConnectionString = CacheConnection.ConnectDlg(); */ + " Password = SYS; User ID = _SYSTEM;"; /* CacheConnect.ConnectionString = CacheConnection.ConnectDlg(); */ CacheConnect.Open(); CacheConnect.Open(); } catch (Exception eConn) catch (Exception eConn) { System.Console.WriteLine("Ошибка подключения: " + eConn.Message); System.Console.WriteLine("Ошибка подключения: " + eConn.Message); } System.Console.WriteLine("Подключение успешно."); System.Console.WriteLine("Подключение успешно.");
Исполнение запроса CacheConnect.Open(); string SQLtext = "SELECT * FROM Sample.Person WHERE ID = 1"; string SQLtext = "SELECT * FROM Sample.Person WHERE ID = 1"; CacheCommand Command = new CacheCommand(SQLtext, CacheConnect); CacheCommand Command = new CacheCommand(SQLtext, CacheConnect); CacheDataReader Reader = Command.ExecuteReader(); CacheDataReader Reader = Command.ExecuteReader(); while (Reader.Read()) { while (Reader.Read()) { Console.WriteLine(Reader[Reader.GetOrdinal("ID")] + ": " Console.WriteLine(Reader[Reader.GetOrdinal("ID")] + ": " + Reader[Reader.GetOrdinal("Name")]); + Reader[Reader.GetOrdinal("Name")]); }; }; Reader.Close(); Reader.Close(); Command.Dispose(); Command.Dispose(); CacheConnect.Close(); CacheConnect.Close();
Транзакции CacheTransaction Trans = CacheConnect.BeginTransaction(); CacheTransaction Trans = CacheConnect.BeginTransaction(); Trans.Commit Trans.Commit Trans.RollBack([savepoint]) Trans.RollBack([savepoint]) Trans.Save([savepoint]) Trans.Save([savepoint])
Proxy-объекты Создание при помощи мастера Создание при помощи мастера Добавление в проект Добавление в проект
Базовые операции Создание объекта Создание объекта –Sample.Person person = new Sample.Person(CacheConnect); Открытие объекта Открытие объекта –Sample.Person person = Sample.Person.OpenId(CacheConnect, "1"); Сохранение/удаление Сохранение/удаление –Save, DeleteId
Работа с коллекциями Можно использовать foreach Можно использовать foreach Привычные метода, такие как add, insert, и т.д. Привычные метода, такие как add, insert, и т.д. На примере работы с FavoriteColors На примере работы с FavoriteColors –CacheListOfStrings –foreach (string color in ColorList) { }
Спасибо за внимание! Вопросы?