Безопасно ли использовать версию сборки SC 7.2 Glass.Mapper.Sc для SC 8?

Glass.Mapper.Sc имеет сборку для каждой версии Sitecore.Kernel (находится в папке lib пакета nuget).

Мы создаем библиотеку, которую можно использовать для разных версий Sitecore (7.2 и 8.1), и мне не хотелось бы создавать версию моей библиотеки для каждой версии Sitecore.

Безопасно ли просто использовать версию 7.2 Glass.Mapper.Sc для версии 8.1?

Все, что мы делаем, это используем базовый API Sitecore, который, насколько мне известно, не изменился между версиями 7.2 и 8.1.


person Mark Lowe    schedule 23.11.2015    source источник
comment
Только что сделал быстрый тест, и он в основном работал. Потом декомпилировал сборки 8.1 и 7.2 и сравнил. Существуют некоторые различия в SitecoreFieldLinkMapper.cs и SitecoreFieldDateTimeMapper.cs, которые, вероятно, означают, что эти поля не будут работать правильно. Приводит меня к выводу, что небезопасно просто использовать версии 7.2 DLL для 8.1.   -  person Mark Lowe    schedule 25.11.2015


Ответы (2)


Я думаю, это не сработает. Glassmapper для Sitecore 8 не работал для Sitecore 8.1 Glass Mapper использует System.Web.Mvc.dll, которая была изменена в версии 8.1 (Mvc 5.2.3), а Glass Mapper использовался до версии Mvc 5.1.

Вот связанная проблема: https://github.com/mikeedwards83/Glass.Mapper/issues/183

person Vlad Iobagiu    schedule 23.11.2015
comment
Проблема в ссылке связана со сценарием установки, а не с самими сборками. Но вы правы в том, что он не работает. - person Mark Lowe; 25.11.2015

Сборки Glass Mapper используют эти DLL

  • Sitecore.Kernel.dll
  • System.Web.Mvc.dll

Эти сборки используются для определения того, на какую версию сборки Glass.Mapper следует ссылаться после ее установки.

Glass.Mapper.Sc для Sitecore 7.2 требует сборки, отличной от Glass.Mapper.Sc для Sitecore 8, так что это не сработает.

person Ahmad Harb    schedule 23.11.2015