Search
Write a publication
Pull to refresh
0
0
Roman @rv82

User

Send message

В общем, ничего действительно полезного не появится. Жаль.

Ух! У меня ещё две восьмёрки вверху и обе криво растут. Что-то мне после прочтения стало страшно. Хорошо, что нижние удалили до прочтения ?

В третьем листинге, в строке

var identity = await kerberosAuth.Authenticate(kerberosCredentials.Ticket);


упомянут объект kerberosCredentials. Скажите пожалуйста, что это и откуда взято? И есть ли у Вас какой-то тестовый проект, в который можно было бы заглянуть, как в образец?
То же самое в Far:
  • Выделить по датам и размерам: Файлы -> Пометить группу (или "+" на NumPad'е). В окне выбираем «Фильтр».
  • Пакетное переименование: F11 -> Пакетное переименование.

Сколько раз пытался привыкнуть к Total Commander и его клонам, и ни разу не смог заставить себя пользоваться ими сколько-нибудь долгое время. Громозкий он какой-то на экране и… даже не знаю… Не цепляет, в общем.
Не, уже не интересно. Пару дней назад полностью выкинули EPPlus.Core из своего проекта. Рецепты из гугла пробовали, но с разбегу не пошло, а разбираться было особо некогда. Быстро посмотрели примеры использования ClosedXML и поняли, что это достаточно близкий аналог и больших переделок не потребуется. Прогнали примеры в debian без установленной libgdiplus, после чего перевели часть функционала на неё. После удачного тестирования окончательно перешли на ClosedXML.
У нас не решило. Экспрт в xlsx падал с исключением:
2020-10-22 13:17:39.337 +00:00 [ERR] The type initializer for 'Gdip' threw an exception.
2020-10-22 13:17:39.340 +00:00 [ERR] at System.Drawing.SafeNativeMethods.Gdip.GdipGetGenericFontFamilySansSerif(IntPtr& fontfamily)
at System.Drawing.FontFamily.GetGdipGenericSansSerif()
...

Перешли на ClosedXML. Благо, принцип работы с ним аналогичен EPPlus, а где-то и удобнее. Серьёзных переделок не потребалось.
DocumentFormat.OpenXml слишком низкоуровневый. Я тоже пару дней назад пытался освоить его с наскоку. В результате пришлось искать что-то более человеко-понимаемое и обозримое. Остановился на ClosedXML.
Не могу ничего сказать про EPPlus, но мы пробовали использовать EPPlus.Core в своём проекте. Упёрлись в то, что она завязана на System.Drawing (в частности, заливка ячеек завязана на тип System.Drawing.Color) и оказалось, что в docker'е под ubuntu xeinal она отказывается работать даже с установленным пакетом libgdiplus. Поглядели было на EPPlus, но не стали связываться с ней, т.к. 1) наверняка она имеет те же зависимости, что и EPPlus.Core, а также 2) последние версии не являются открытыми. Остановились на ClosedXML (лицензия MIT). Работает прекрасно, как в windows, так и в linux даже без libgdiplus.

PS. EPPlus.Core уже давно брошена. Собственно, она и не была никогда серьёзным проектом, в только любительским переносом какой-то версии EPPlus на .NET Core.

PPS. Чтобы не упереться в проблемы при поиске пакетов на nuget.org, я настоятельно советую всем сходить по ссылкам «Project Site» и «Source repository» и почитать, подробности о них. Если этих ссылок у пакета нет, то это повод пройти мимо.
На github-странице проекта написано:
DON'T use dotnetcore/NPOI anymore
a. This project is NOT in maintainence for at least 2 years (no update after 2018)

b. It's a migrated .net core version of NPOI 2.2.1 (which is published 4 years ago)

c. They betray the open source spirit. All the git history from NPOI team are deleted. Neuzilla studio info is removed. Original Readme.txt is removed (all the contributors of NPOI are removed.)
Часто ли у вас было такое, что вы добавляли новое значение в enum и потом тратили часы на то, чтобы найти все места его использования, а затем добавить новый case, чтобы не получить ArgumentOutOfRangeException во время исполнения?

Никогда не приходилось тратить на это часы. Давишь Shift+F12 и пробегаешься по списку, правишь, где что надо.
Перешел на Rider, благо он работает под Linux, плюс быстрее, чем решарпер.

Прошу прощения, а как вы решаете проблему лицензии? Покупаете? Или ломаете? Мне что-то совесть не даёт пользоваться ломаным продуктом. А цена на него никак не радует. Поэтому под linux'ом использую VSCode. Хотя работу в ней удобной не назовёшь. Да ещё и OmniSharp приходится периодически перезапускать, т.к. в какие-то моменты он начинает подглюкивать.
Спасибо за Вашу статью! Обязательно скачаю и проверю.
Года 2 назад пробовал эту штуку, но она почему-то ни в какую не хотела переходить к найденному объекту в Object explorer'е. В итоге бросил её и скачал с их же сайта dbForge Express, тоже бесплатный. С тех пор так и пользуюсь двумя программами. SSMS использую, если нужен пошаговый отладчик или если приходится работать с большим sql-файлом. У SSMS весьма удобный инкрементальный поиск, чем не может похвастать dbForge. Для всего остального использую dbForge. В частности, если нужно влезть грубой силой в какую-то таблицу и что-то в ней поменять. Редактор данных в dbForge очень удобен.Жаль, нет такого в SSMS.

И да, в SSMS есть своё средство для поиска объектов а Object Explorer'е. Называется Object explorer details и вызывается клавишей F7. Находит объект по имени и позволяет отобразить его в Object Explorer'е. По содержимому объектов не ходит. Поэтому, насколько я понял, найти, какой таблице принадлежит столбец или где вызывается определённая функция, эта штука не сможет, в отличии от dbForge.
Команда должна постоянно стремиться к тому, чтобы превзойти в новом спринте количество наработанных баллов за предыдущий спринт, то есть ее цель — постоянно превосходить свои собственные результаты — «наращивать динамику производительности».

В результате наступает момент, когда практически все члены команды работают с 8 утра до 9 вечера. А дальше два варианта — или пахать без перерывов на сон, или бросить к чертям такую работу. В данный момент наша команда как раз находится в этой точке.
В статье нет упоминания, как добавить SignalR в проект .Net Core. А между тем, на данный момент это не такая простая задача. Так что, статья точно не «для чайников».
Детство вспомнилось! Днями сидел в компьютерном классе за этим редактором. Было интересно сохранять из него рисунки на дискете, а потом открывать в бейсике. Только палитра цветов, при этом, сильно изменялась.

А вместо команды call painter можно было использовать _paint или даже _pai. У нас это тоже работало. Только перед этим нужно было отключить компьютер от локальной сети. В тоге последовательность была такая:

_nete
_pai

Когда у моего одноклассника появился Pentium 200 с Win95, и я увидел у него Paint, то первая мысль была: «Это что за ничтожество?!»

То, что у нас в школе был такой компьютерный класс и хороший учитель информатики, помогло мне чувствовать себя уверенно на информатике в университете и предопределило моё будущее. Чего не могу сказать о своих одногруппниках. Информатика у нас не была профилирующей дисциплиной и многие от неё ныли. И, насколько я знаю, я единственный из нашего потока, кто работает программистом. Прошу прощения за нескромность.

Пользуясь случаем, выражаю глубочайшую благодарность нашему учителю информатики, Скадину В. В.!
Лично мне статья понравилась. Сам я полный ноль в веб-дизайне. Но поставлено задание сделать веб-страницу (невзирая на ноль). А в статье даются советы, в какую сторону смотреть перед тем, как приступить собственно к разработке страницы.
Насколько я знаю, любители Component Pascal считают именно его истинным компонентно-ориентированным языком.
Просто, в первом и втором моих комментариях классовые переменные разные. В первом комментарии это переменные класса, как объекта, во втором — собственно классовые переменные. Звучит похоже, но вещи разные
А вот теперь вышел как раз на то поведение, что указано в статье. Для этого надо сделать некоторые изменения в базовом классе:
Object subclass: #MyClass
	instanceVariableNames: ''
	classVariableNames: 'classvar'
	package: 'Roman-Pkg'

MyClass class
	instanceVariableNames: ''

И вот тут-то, если выполнить в Playground тот же код, что и в моём предыдущем комментарии, то получим 20\n20\n50\n50. Т.е., при таком определении классовых переменных конфликты имеют место быть. Что ж, значит и в смолтоке нужно быть аккуратным, только и всего. С другой стороны, самому мне ни разу не приходилось использовать классовые переменные ни в руби, ни в смолтоке, хотя и представляю себе, в каких ситуациях они могут быть полезны. Так что, невелика проблема.
1

Information

Rating
Does not participate
Registered
Activity