Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Получение Caption / 11 сообщений из 11, страница 1 из 1
15.09.2008, 10:36
    #35538938
cerGar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
Здравствуйте! Сразу извиняюсь за ламерский вопрос, но как из C# получить Caption свойства Cache?
Cache 5.2
Заранее спасибо.
...
Рейтинг: 0 / 0
15.09.2008, 11:58
    #35539193
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
cerGarполучить Caption свойства Cache?
Может имелось ввиду свойство некоего класса?
...
Рейтинг: 0 / 0
15.09.2008, 12:18
    #35539257
cerGar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
krvsa cerGarполучить Caption свойства Cache?
Может имелось ввиду свойство некоего класса?
Именно так.
У меня есть класс myClass , в нем свойство myProp

/// Мое свойство
Property myProp As %String(CAPTION = "Мое свойство") [ Required ];

Извиняюсь если ранее не точно сформулировал вопрос. Исправляюсь: Как средствами C# из Cache получить CAPTION свойства некоторого класса?
...
Рейтинг: 0 / 0
15.09.2008, 13:15
    #35539413
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
А как подключаться к Кащею, "запускать" методы/функции и получать отних значения уже в курсе?
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
15.09.2008, 13:27
    #35539438
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
Потому как дальше вроде так

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
GetCaption(ClsName,Fld)
 n id,o,val
 s id=ClsName_"||"_Fld
 s o=##class(%Dictionary.CompiledProperty).%OpenId(id)
 s val=o.Parameters("CAPTION")
 d o.%Close()
 q val
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
16.09.2008, 11:54
    #35541505
cerGar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
krvsaА как подключаться к Кащею, "запускать" методы/функции и получать отних значения уже в курсе?
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT

Вот-вот, как запустить метод каше из C# к сожалению не в курсе. С каше соединяюсь так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
CacheConnection cnCache;

try
{
     cnCache = new CacheConnection();

     cnCache.ConnectionString = strConn;

     cnCache.Open();
}
catch (Exception eConn)
{
      System.Console.WriteLine("Ошибка подключения: " + eConn.Message);
}
       
...
Рейтинг: 0 / 0
16.09.2008, 11:58
    #35541512
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
cerGarкак запустить метод каше из C# к сожалению не в курсе
Фигово...
У нас ребята с Дельфями работают... Создают абстрактный класс в Кащее... Там делают методы... Вот их-то и вызывают...
Придется тебе насильников ждать. Тут только они подскажут...
...
Рейтинг: 0 / 0
16.09.2008, 13:43
    #35541868
cerGar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
krvsa cerGarкак запустить метод каше из C# к сожалению не в курсе
Фигово...
У нас ребята с Дельфями работают... Создают абстрактный класс в Кащее... Там делают методы... Вот их-то и вызывают...
Придется тебе насильников ждать. Тут только они подскажут...
А примерчик есть?
...
Рейтинг: 0 / 0
16.09.2008, 13:53
    #35541910
krvsa
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
Поспрошал сейчас их (ребят)... Примерчик тебе ничего не даст. Т.к. сама связь с Кащеем "самописная" компанента...
----------
Cache for Windows (x86-32) 2007.1.3 (Build 607) Wed Oct 17 2007 02:12:09 EDT
...
Рейтинг: 0 / 0
16.09.2008, 16:20
    #35542419
Игорь Сойников
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
кроме CacheConnection ecть еще CacheObject
в Delphi это выглядит так:
fact := TCacheObject.New();
fact.Connect := cConnect; //это (TCacheConnection)
obj := fact.New(<класс>); //класс строка 'User.Text'
или
obj := fact.Open(<класс>,<id>);
дальше работаем
a := obj.<Property> ;
a :=obj.<Metod>(параметр1,...);
...
Рейтинг: 0 / 0
17.09.2008, 14:30
    #35544460
cerGar
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Получение Caption
Всем спасибо за ответы, решил я свою проблему, пообщавшись с людьми из InterSystems (огромное им спасибо):
В Cache:
Создаем класс-интерфейс для получения данных об описании классов из Cache в C#
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
 Class User.GetClassDef Extends %RegisteredObject
{
ClassMethod GetCaption(ClassName As %String,PropertyName As %String) As %String
{
    Set result=""
    Set pdef=##class(%Dictionary.CompiledProperty).%OpenId(ClassName_"||"_PropertyName)
    If $IsObject(pdef) {
        Set result=pdef.Parameters.GetAt("CAPTION")
        Set pdef=""
    } 
    Quit result
}
}


После этого создаем прокси-класс C# для созданного класса Cache c помощью CacheNetWizard.exe (находится в каталоге CacheSys\Dev\DotNet\Bin, где CacheSys - каталог, в который установлен Cache)

Потом в C#:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
// Создаем соединение
private CacheConnection conn;
//...  
// Прописываем его параметры или как здесь выбираем из диалогового окна
string connStr = CacheConnection.ConnectDlg();
conn = new CacheConnection();
conn.ConnectionString = connStr;
// Соединяемся
conn.Open();
//...
// Работа с объектом
private Sample.Person person;
// Создаем новый
person = new Sample.Person(conn);
// Или открываем существующий (для хранимых)
person = Sample.Person.OpenId(conn, txtID.Text, out status);
// Работаем с его свойствами-методами, как с обычным объектом C#. Например,
txtName.Text = person.Name;
...
Рейтинг: 0 / 0
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Получение Caption / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]