Azure SDK 1.7 -> 1.8 или как потерять 1000р за один апдейт

Еще в октябре прошлого года одновременно с MSVS2012 появилась версия Azure SDK 1.8 и казалось, что это чисто формальное обновление связанное с переходом на новую Visual Studio. Конечно есть и улучшения, такие как поиск по имени ошибки во многочисленных логах IntelliTrace (как можно было не догадаться сделать это с самомго начала?). Возможно рано или поздно у нас также появится средства для нормальной работы с blobstorage из самой студии. Однако, подозрения, что с 1.8 что-то не так начали появляться сразу, о чем был поднять вопрос в сообществе по рекламе Azure в России.

По опыту выяснилось,что
1) В результате автоматического обновления ссылки на библиотеки 1.8 ставятся CopyLocal = False, даже если до этого у вас стояло копирования этой библиотеки.
2) Уничтожен класс CloudConfigurationManager, отвечавший за получение настроек роли. Вместо него можно использовать RoleEnvironment.GetConfigurationSettingValue("Diagnostics.ConnectionString"); С той лишь разницей, что последняя может падать, если RoleEnvironment.IsAvailiable = false.Например, если обратиться до завершения WebRole.OnStart
3) И самое страшное проиллюстрирую следующим кодом. Заключается в различной обработке Таблицами параметров содержащих символов попадающих под UrlEncode.
Copy Source | Copy HTML
  1. string pageuri = pageElement.Attribute("uri").Value.ToLower().Replace("/default.aspx", "/");
  2. string pageuri_encoded = HttpUtility.UrlEncode(pageuri);
  3. SapePageAzure result = (from e in CreateQuery()
  4.                         where e.RowKey == pageuri_encoded &&
  5.                         e.PartitionKey == partitionid select e).FirstOrDefault();
  6. if (result == null)
  7. {
  8.     result = new SapePageAzure
  9.     {
  10.         RowKey = pageuri,
  11.         PartitionKey = partitionid,
  12.         LastAccess = DateTime.Now
  13.     };
  14.     ContainerTable.AddObject(TableName, result);
  15.     //ContainerTable.SaveChangesWithRetries();
  16. }

Если в Azure SDK1.7 нужно было использовать в обоих местах pageuri_encoded, и в выворе и во вставке. То в Azure SDK1.8 добавилась скрытая перекодировка, и получилось, что при выборе параметров из таблицы нужно использовать pageuri_encoded, а при вставке pageuri, так как теперь кодируется автоматически.
Как результат - все блоги из blogscloud.ru, которые синхронизированы с Sape и хранят набор ссылок в виде URL в таблицах, перестали корректно работать. Sape обнаруживает, что все ссылки на сайтах не отображаются и блокирует все сайты отправляя их на повторную можерацию. End of story.


PS: По случаю отзыв про tfspreview.com - возможность бесплатного использования TFS2012 для одиноких разработчиков. В общем ни в коем случае не расчитывайте на нее. Очень сильно тормозит и не дает чекинить большое количество документов. Появилось сие творение видимо потому, что все нормальные платные TFS провайдеры, такие как discountasp.net не смогли или не захотели вовремя предоставить TFS2012 для коммерческих пользователей.

Метки:   Категории:Analytics | Csharp | microsoft | Code


blog comments powered by Disqus

Добавить комментарий

Кто я?

Программист. Я слежу за блогосферой и знаю, как будет развиваться интернет. Когда у меня есть время я даже прилагаю для этого усилия. Подробнее

Последние комментарии

Не отображать

Topbot at FeedsBurner

Облако тэгов

Мои Твиты

Twitter сентября 14, 17:50
Цвет настроения черный http://dlvr.it/QkCWGn https://twitter.com/f1ashr/status/1040659099577282561/photo/1

Twitter сентября 13, 01:55
.Net - Контексный поиск с учетом русской и английской морфологии http://dlvr.it/Qk1GLz

Twitter сентября 13, 01:32
коломенский кремль: альтернативная история 2 http://dlvr.it/Qk1BxG https://twitter.com/f1ashr/status/1040050452677701632/photo/1

Twitter сентября 13, 01:32
Найдено применение для дополненной реальности http://dlvr.it/Qk1BsW https://twitter.com/f1ashr/status/1040050446155436032/photo/1

Twitter сентября 13, 00:59
Россия будет воевать http://dlvr.it/Qk15Rh

Twitter сентября 13, 00:59
Диджеи будущего http://dlvr.it/Qk15Lx

Twitter сентября 13, 00:26
Теория общего знания - (Заповеди информационного общества, часть 12) http://dlvr.it/Qk0zsZ

Twitter сентября 12, 23:21
Обновлен робот instagram для лайков http://dlvr.it/Qk0mK6

Twitter сентября 12, 20:02
Пользователи умудрились поломать гео-локацию в Инстаграм http://dlvr.it/QjzzRL

Twitter сентября 12, 20:02
Про самолет Ту-154 и убийство посла http://dlvr.it/QjzzDG https://twitter.com/f1ashr/status/1039967405378658304/photo/1

Twitter сентября 12, 18:56
Разбор 2 сезона Мир Дикого Запада (WestWorld2) http://dlvr.it/Qjzgnv https://twitter.com/f1ashr/status/1039950797130199040/photo/1

Twitter сентября 8, 20:46
Британцы запилили рекламный ролик, который стал вирусным на весь мир http://dlvr.it/QjZ0bK https://twitter.com/f1ashr/status/1038528905970208768/photo/1

Twitter сентября 1, 07:42
Яндекс заменил ТИц на ИКс http://dlvr.it/Qhm5Ms

Twitter августа 24, 07:51
Почему на рассвете резко холодает и выпадает роса? http://dlvr.it/QgwSff https://twitter.com/f1ashr/status/1032898080767541251/photo/1

Twitter августа 23, 01:09
Самоуправляемые ездящие картошки http://dlvr.it/QgnhXc

Twitter августа 22, 19:11
Что такое любовь? Песнь льда и пламени http://dlvr.it/QgmPPH https://twitter.com/f1ashr/status/1032344431158951936/photo/1

Twitter августа 22, 13:47
Мир Дикого Запада 2-й сезон http://dlvr.it/QgkpBm

Twitter августа 22, 12:42
Игра Престолов детальный разбор 7 сезонов http://dlvr.it/QgkSpD https://twitter.com/f1ashr/status/1032246535336022016/photo/1

Twitter августа 22, 10:29
Танец китайских военных http://dlvr.it/QgjrK3 https://twitter.com/f1ashr/status/1032213200412979200/photo/1

Twitter августа 22, 10:29
Где россияне праздновали новый 2017 год http://dlvr.it/QgjrJL https://twitter.com/f1ashr/status/1032213193291051008/photo/1

Мой твиттер

Копирайт

Все мысли, высказанные в блоге, являются моим мнением и за это мнение меня никто не забанит! Кроме того, никто не имеет право копировать материалы блога без использования ctrl+C/V!

© Copyright 2008