AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
DAX
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.05.2018, 14:00   #1  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от ax_mct Посмотреть сообщение
InventTrans inventTrans = (СustTrans)common; // должна быть ошибка компиляции
Это она в аксапте есть, но нет способа строго привести к другому типу не объявляя дополнительных переменных.

Цитата:
Как понимаю вопрос в таком downcast
void foo(Common _commonCustTrans)
Я имел ввиду это:
X++:
void foo(CustTrans _custTrans)
{
}

Common x;
foo(x);
Старый 16.05.2018, 14:12   #2  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от belugin Посмотреть сообщение
Это она в аксапте есть, но нет способа строго привести к другому типу не объявляя дополнительных переменных.



Я имел ввиду это:
X++:
void foo(CustTrans _custTrans)
{
}

Common x;
foo(x);
Ага. А должен быть warning в VS ?
Manager extends Person;
Worker extends Person;

void callWorker(Worker _worker){};

Person person;
callWorker(person);
Старый 16.05.2018, 14:33   #3  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Должен быть compiler error как в С#, например, пока не будет явного каста.
За это сообщение автора поблагодарили: ax_mct (3).
Старый 16.05.2018, 16:10   #4  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от belugin Посмотреть сообщение
Должен быть compiler error как в С#, например, пока не будет явного каста.
Понял. Спасибо. Как-то в голову не приходило что X++ компилятор в VS отличается от С# компилятора.

Как-то ассоцировалось с VB.NET vs С#.NET где по-сути только синтаксис отличия, а тут как бы не X++.NET, а типа интеграция для поддержки старого X++ кода.

Наверное эта интеграция и жрет все ресурсы

А где можно почитать впечатления клиентов от работы в D365FO с точки зрения быстродействия? HTML он там тоже может быть прожорливый, или кэшируется слой презентации как-то?
Старый 16.05.2018, 16:23   #5  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Как-то ассоцировалось с VB.NET vs С#.NET где по-сути только синтаксис отличия, а тут как бы не X++.NET, а типа интеграция для поддержки старого X++ кода.
Да, это для обратной совместимости. Он очень похож на то, что в 2012 по своим свойствам.

Цитата:
Наверное эта интеграция и жрет все ресурсы
В отличие от 2012 он переписан на C#, то есть код сравнительно свежий.
В отличие от 2012 он генерирует сборки, то есть такая ситуация, что часть кода не компилируется, не позволяется.
В отличие от C#, есть просто гигантская сборка под названием Application Suite и применены всякие трюки чтобы билдить и юзать ее частично.
Еще в отличии от C# код хранится в XML для поддержки слоёв .
Кусочек который я трейсил при помощи PerfView занимался, в-основном, дересерелизацией метаданных из этого XML. Возможно там есть задел для ускорения.
Старый 16.05.2018, 17:30   #6  
ax_mct is offline
ax_mct
Banned
 
2,548 / 1091 (0) ++++++++
Регистрация: 10.10.2005
Адрес: Westlands
Цитата:
Сообщение от belugin Посмотреть сообщение
В отличие от 2012 он переписан на C#, то есть код сравнительно свежий.
В отличие от 2012 он генерирует сборки, то есть такая ситуация, что часть кода не компилируется, не позволяется.
В отличие от C#, есть просто гигантская сборка под названием Application Suite и применены всякие трюки чтобы билдить и юзать ее частично.
Еще в отличии от C# код хранится в XML для поддержки слоёв .
Кусочек который я трейсил при помощи PerfView занимался, в-основном, дересерелизацией метаданных из этого XML. Возможно там есть задел для ускорения.
Конвертировать X++ код в C# мне представляется куда менее трудоемкой задачей чем то что сделано.

Хранить в .cs., поддержку слоев реализовать структурой файловой системы где хранятся эти .cs. (Tables\USR\CustTable.cs)

Но спасибо за опыт и комментарии, познавательно. Разве что остается вопрос как много китайцев работает в датском офисе, кто-то же придумывает эти семиколесные велосипеды
Старый 16.05.2018, 19:02   #7  
belugin is offline
belugin
Участник
Аватар для belugin
Сотрудники Microsoft Dynamics
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии 2011
Лучший по профессии 2009
 
4,622 / 2925 (107) +++++++++
Регистрация: 16.01.2004
Записей в блоге: 5
Цитата:
Сообщение от ax_mct Посмотреть сообщение
Конвертировать X++ код в C# мне представляется куда менее трудоемкой задачей чем то что сделано.
Резeльтат будет в простых случаях многословнее и в каких-то случаях тормознее (LINQ) и надо будет наделать дополнительных правил проверски, на корректность этого LINQ.

Еще непонятно, что делать с гигантским монолитным ApplicationSuite.

Цитата:
Хранить в .cs., поддержку слоев реализовать структурой файловой системы где хранятся эти .cs. (Tables\USR\CustTable.cs)
Я бы просто хранил в системе контроля версий по веткам.

Цитата:
Но спасибо за опыт и комментарии, познавательно. Разве что остается вопрос как много китайцев работает в датском офисе, кто-то же придумывает эти семиколесные велосипеды
Они недалеко от Редмонда.

P.S. The future of C#
Теги
ax7, dynamics 365 for operations, x++

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
instructorbrandon: April 12th, One Hour D365UG Training Webinar on Undocumented Technique for Performance Tuning D365FO Blog bot DAX Blogs 0 11.04.2018 03:42
D365FO - Как выбрать группу ресурсов (Azure Resource Group) для одно-серверной облачной среды D365FO? MarinaAX DAX: Администрирование 1 14.02.2018 00:03
cleverax: D365FO: Using Bar codes, External codes and GTIN in Warehouse app to identify an item. Blog bot DAX Blogs 0 03.02.2018 21:13
cleverax: D365FO: Manual inbound load rating Blog bot DAX Blogs 0 03.02.2018 21:13
Первые впечатления от АКСАПТЫ Rafael DAX: Прочие вопросы 0 27.11.2001 21:24

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 01:11.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.