Сохранен 574
https://2ch.hk/pr/res/843711.html
24 декабря 2023 г. Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

.NET THREAD #2 (C#/F#/VB)

 Аноним 18/09/16 Вск 00:27:03 #1 №843711 
14741476235110.png
Тред единственной элитной платформы в мире программирования.

Шапка: https://github.com/CSharpShapka/SharpHat/wiki

(пока просто перенесена шапка из ОП-поста, в ближайшее время приведу к более-менее адекватному виду, не стесняйтесь слать свои пулл-реквесты)

Прошлый тред тонет здесь: http://2ch.hk/pr/res/824683.html
Аноним 18/09/16 Вск 00:34:43 #2 №843719 
Как указать размер у незубчатого массива? У зубчатого так -
>int[,] te = new int[4,8]
А у незубчатого как? Эти варианты не работают:
>int[][] te = new int[4][8]
>int[][] te = new int[4,8]
Аноним 18/09/16 Вск 00:49:19 #3 №843725 
14741489592500.jpg
>>843719
multidimensional array:
>int[,] array = new int[4, 2]

jagged array:
>int[][] array = new int[2][]
>array[0] = new int[3];
>array[1] = new int[4];
Аноним 18/09/16 Вск 00:56:33 #4 №843732 
>>843725
Понял, спасибо!
Аноним 18/09/16 Вск 00:57:33 #5 №843733 
14741494531660.jpg
14741494531771.png
>>843711 (OP)
Какой маленький оп пик, я понимаю что у вас нет комплексов, но все же
Аноним 18/09/16 Вск 03:13:36 #6 №843749 
14741576162900.png
Почему у меня в цикле выводятся лишь первые 218 элементов массива, если должно выводиться около 10000?
Аноним 18/09/16 Вск 05:02:14 #7 №843767 
>>843749
i <= array[array.Length - 1]
нужно
i < array.Length
Аноним 18/09/16 Вск 07:22:47 #8 №843792 
>>843767
Это слишком просто

>>843749
Нюфажик, раскажи как ты вообще понимаешь смысл написанного тобой условия?
Аноним 18/09/16 Вск 11:41:51 #9 №843842 
>>843792
>>843767
Я не думал, что мог обосраться с элементарным циклом. Писать код в 3 ночи было ошибкой, всем спасибо.
Аноним 18/09/16 Вск 11:47:05 #10 №843844 
>>843749
Так, он все равно мне в консоли выводит лишь с 9759 и до последнего элемента массива.
for (int i = 0; i <= array.Length-1; i++)
{
Console.WriteLine(i + ":\t" + array);
}
Аноним 18/09/16 Вск 12:23:34 #11 №843850 
14741906146630.jpg
>>843557
Анон, а как ты разбираешься с большими неизвестными солюшенами?

С отдельными мелкими классами проблем нет, но я не понимаю как разобраться с большой кодовой базой в целом.
Разобраться в целом = знать какие классы есть в проекте, какие у них интерфейсы, как классы связаны между собой. Глубокое знание реализации пока не интересует.

Пробовал Code Map, легче не стало. :(
Аноним 18/09/16 Вск 16:15:07 #12 №843970 
14742045077840.jpg
Есть большой файл. Хочу считывать его строки в пределах указанных байтовых границ.

FileStream inputStream = new FileStream(«azaza.txt», FileMode.Open);
StreamReader inputReader = new StreamReader(inputStream);
inputStream.Position = 9000;
inputStream.SetLength(900000);
string text = inputReader.Readline();

Вроде всё должно работать. Но эта команда inputStream.SetLength(900000); обрезает файл.
Есть ли простое решение? Или придётся писать свой ReadLine с побайтовым считыванием строк?
Аноним 18/09/16 Вск 16:15:48 #13 №843971 
>>843850
Зачем тебе полностью видеть всю картину? Чтобы добавить функционал или что-то поправить не нужно знать как работает все приложение.
Просто беру и разматываю ты часть, которая мне нужна.
Аноним 18/09/16 Вск 16:58:11 #14 №844008 
>>843844
Выводится на самом деле, просто консолька не хранит весь вывод, только последнее
Аноним 18/09/16 Вск 17:37:11 #15 №844025 
>>843970
https://msdn.microsoft.com/en-us/library/9kstw824(v=vs.110).aspx
Аноним 18/09/16 Вск 17:57:26 #16 №844041 
14742106462870.jpg
>>843971
Я и не говорил что мне нужно.
>знать как работает все приложение.

Я просто хочу получить представление о кодовой базе продукта. Из каких классов он состоит и как они между собой связаны(т.е. глубже интерфейса изучать классы не требуется).
Аноним 18/09/16 Вск 18:03:33 #17 №844043 
>>844041
Никак, идешь к тому кто знает, он тебе все рассказывает.
Аноним 18/09/16 Вск 18:08:18 #18 №844048 
>>844043
Никак, идешь к тому кто знает, он тебе все рассказывает
выкладываешь тысячу денег, чтобы пришёл кто-то, и разобрался в этом пиздеце: https://www.upwork.com/job/Custom-Control-Library-WPF-using_~01eaa9761402514863/
Аноним 18/09/16 Вск 18:21:55 #19 №844058 
>>844048
>Once the programmer is left
Инстант проигрыш, да и все история анекдот какой то, и нубов научи, и контрол у них с нуля, и фрилансером будь.
>Member Since Sep 8, 2016
Okay
Аноним 18/09/16 Вск 20:09:41 #20 №844106 
>>843711 (OP)
Спасибо за перекат, думал перекатывать вовремя и обновить/структуировать шапку, но времени катастрофически что-то не хватает. Добра, короче.
Аноним 18/09/16 Вск 20:25:31 #21 №844111 
>>844106
Можно сделать скрипт для автопереката и брать текст с мастера в гите.
Аноним 18/09/16 Вск 21:53:25 #22 №844129 
>>844111
Я хотел сделать скрипт для автопереката, но сейчас занят и не определился, какой язык взять. Один рубист это делал, но он бросил. Нужно сделать так, чтобы любой ОП мог добавить свой тред.
Аноним 18/09/16 Вск 22:10:52 #23 №844141 
>>844129
Я могу конечно, правда это не слишком интересный проект. ОПом будет скрипт, который по достижению бамплимита будет пересоздавать тред.
Я наверное опять хуйню сморожу, но Аноним 19/09/16 Пнд 12:54:56 #24 №844412 
Если я работаю с одной БД MSSQL, но приложение с несколькими формами, то мне на каждой форме что ли надо заново контекст выдергивать? Или где-то его один раз открыть и потом уже по выходу из приложения закрывать? Интуитивно понимаю, что на производительности сказаться может
Аноним 19/09/16 Пнд 13:20:23 #25 №844424 
>>844412
ты, конечно, можешь держать соединение все время работы приложения, но правильней всего будет создавать контекст каждую транзакцию
Аноним 19/09/16 Пнд 13:25:32 #26 №844427 
>>844424
ага, спасибо. а это не сильно по-васянски?
Аноним 19/09/16 Пнд 17:43:39 #27 №844548 
>>844427
Держать соединение это по васянски. Гугли Unit of work.
Аноним 19/09/16 Пнд 17:44:28 #28 №844551 
>>844141
И где будет хоститься этот скрипт?
Аноним 19/09/16 Пнд 18:06:30 #29 №844574 
>>844427
это наоборот самое верное решение.
Аноним 19/09/16 Пнд 18:21:46 #30 №844587 
>>843844
В консоли так много не помещаетс, выводи в файл
Аноним 19/09/16 Пнд 19:58:03 #31 №844624 
>>844551
У меня есть vps.
Аноним 19/09/16 Пнд 20:46:01 #32 №844651 
14743071621080.png
Возможно ли такое, чтобы содержимое where из linq можно было подгрузить из гуя? И не просто сравнение с переменными, а как если бы это условие было бы написано в коде.
Аноним 19/09/16 Пнд 21:17:52 #33 №844668 
>>844651
Копай в сторону expression trees
Аноним 19/09/16 Пнд 21:22:38 #34 №844671 
>>844651
Покажи примерно что ты хочешь то, а то не понятно нихуя.
Аноним 19/09/16 Пнд 21:33:30 #35 №844677 
>>844651
Гугли Linq.Dynamic, там можно передавать строки эквивалентные лямбдам в Linq.
Если я правильно понял вопрос.
Аноним 19/09/16 Пнд 21:36:00 #36 №844679 
>>844624
А а капчу как распознавать? Сервисом чтоль каким?
Аноним 19/09/16 Пнд 21:47:29 #37 №844683 
Анон,
Как узнать на какие методы указывает делегат?

Аноним 19/09/16 Пнд 22:22:37 #38 №844712 
14743129580230.png
>>844683
оттака
Аноним 20/09/16 Втр 13:56:43 #39 №844868 
Есть maskedtextbox'ы в которых заданы маски типа "0,00", заданы выражением "0.00". С формы забираю те, которые вводятся, конвертирую их в дабл, рассчитываю значения и вывожу их в другие mtb, конвертнув тустрингом.

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

При записи в БД конвертируется вновь в дабл текст, полученный после расчета в mtb
Аноним 20/09/16 Втр 13:59:01 #40 №844870 
>>844868
Хуево, чо.
Аноним 20/09/16 Втр 16:51:34 #41 №844970 
>>844868
О, как она меня унизиль субханаЛЛах.

в свойстве textMaskFormat надо было include prompt указать. ибо оно значение типа 0,23 возвращало в виде _,23 где _ - это пробел.
Чтобы понять пришлось эту говносхему в консольке параллельно произучать, охуительный язык, все понятно на самом деле, даже без справочников
Аноним 20/09/16 Втр 18:42:50 #42 №845032 
Пиздец анон,
Я просто плачу от собственной тупости. Уже хуй знает сколько пытаюсь пройти главу с событиями. Делегаты разобрал, все вроде ясно.
Можешь подкинуть схематичное объяснение event'ов?
Как подписывать на событие, схематично с привязкой к коду.
Спасибо.

Аноним 20/09/16 Втр 18:44:11 #43 №845034 
>>845032
Делегаты-то здесь и вовсе ни при чём.

this.gridView.SelectionChanged += this.gridView_SelectionChanged;

И затем:

private void gridView_SelectionChanged(object sender, DevExpress.Data.SelectionChangedEventArgs e)
{
this.UnselectRows();

if (this.MultiSelect || this.gridView.SelectedRowsCount <= 1)
this.OnSelectionChanged();
}
Аноним 20/09/16 Втр 18:49:35 #44 №845042 
ньюфаг в треде. Посоветуйте ресурсов с задачками, только не хардкорно-анальной сложности, желательно по темам чтобы были разделены.
Аноним 20/09/16 Втр 19:30:44 #45 №845067 
14743890442470.jpg
>>845034
>Делегаты-то здесь и вовсе ни при чём.
Аноним 20/09/16 Втр 22:58:42 #46 №845172 
>>845034
>Делегаты-то здесь и вовсе ни при чём.
Правильно, я тоже на хую вертел EventHandler
Аноним 20/09/16 Втр 23:38:47 #47 №845191 
>>845034

Спасибо.
Объясни пожалуйста каждую строчку. Что-кого вызывает и куда указывает.
Спасибо.
Аноним 20/09/16 Втр 23:40:25 #48 №845193 
>>845191
>каждую
>одна строка полезного кода
>каждую
Аноним 21/09/16 Срд 04:02:00 #49 №845278 
Добрался до 7.0, полистал. Туплы, readonly-классы, патерн-матчинг. Дебилов на c# насильно осчастливливают короче. Превращают в F#.

Вангуем, когда завезут констрейны? https://docs.microsoft.com/en-us/dotnet/articles/fsharp/language-reference/generics/constraints

в 8.0? Особенно интересно будет, если зделают не уёбищные инлайн-констрены мемберов, а что-нибудь типа тайпклассов хачкеля, пусть и простеньких. 20 лет жду.
Аноним 21/09/16 Срд 06:57:27 #50 №845287 
>>845278
Какого хрена они про primary-constructor забыли, обещали еще в 6.0 и все что-то тормозят.
Заебали анальные приседания с присвоение всех параметров к полям.
Аноним 21/09/16 Срд 07:24:02 #51 №845288 
>>844679
Можно и антигейтом, но есть вариант проще.
Аноним 21/09/16 Срд 23:36:15 #52 №845797 
>>844412
>>844424
>>844548
А разве божественный дотнет не оптимизировать это вместо нас по умолчанию?
https://msdn.microsoft.com/en-us/library/8xx3tyca(v=vs.110).aspx




Олсо. Вопрос. Как структуририровать проект? Ну там мультилеер, где кор выше всего (в нем всякие коммон хелперы, интерфейсы, логирование и все такое). Дата - репозитории. Возможно модел- где лежат поко, модели, дтохи. Сервисный слой- где бизнесслогика дергает репозитории и манипулирует моделями. Ну и конечные солюшены, которые дергают сервиси. Поясните, так норм?

Еще. Стоит ли выделять в класс лайбрари логику работы с определенным доменом. Юзер менеджеры,например. Чтоб теоретически юзать это в других проектах. Но тогда получается, что для каждого такого домена нужно еще по слою делать( репо, кор и т.д). Этож охуеть сколько класс лайбрари в проекте будет.
Приведите пример архитектуры годной, плиз.

Может кто в личечке не против, чтоб я с ним посоветовался, если тут не удобно?
Аноним 21/09/16 Срд 23:36:49 #53 №845798 
>>844574
Почему же?
Аноним 21/09/16 Срд 23:40:16 #54 №845803 
>>845288
Какой же?
Аноним 22/09/16 Чтв 00:05:20 #55 №845819 
>>845798
У тебя не расходуются ресурсы на поддержание коннекта к бд, ты не даёшь разрастаться своему контексту до неебических масштабов и ему не придётся трекать миллион всякой хуеты.

Господин сверху советовал глянуть на Unit of Work. Именно так в промышленной разработке пользуют контексты.
Аноним 22/09/16 Чтв 00:46:07 #56 №845833 
14744943673290.jpg
Сап шарпаны. Что тут можно выбрать, если меня учили просто работать с базой данных через скрипты в манагер студии?
Аноним 22/09/16 Чтв 05:29:17 #57 №845902 
14745113575760.jpg
Был точно уверен что правильный ответ это D. Это я тупой, или в тесте ошибка?
Аноним 22/09/16 Чтв 07:05:49 #58 №845915 
>>845902
Ты тупой.
Аноним 22/09/16 Чтв 07:17:08 #59 №845917 
>>845803
Попробуй подумать каким образом можно вообще не иметь дела с капчей.
Аноним 22/09/16 Чтв 08:00:57 #60 №845932 
>>845902
protected internal = protected ИЛИ internal
Аноним 22/09/16 Чтв 09:36:48 #61 №845959 
Но там нет ИЛИ.
Пюслюс, почему в ответе правильном перед and запятая, это инглиш грамматика или ошибка?
Аноним 22/09/16 Чтв 10:19:18 #62 №845979 
>>845959
Почитай про сложносочиненные предложения.
Аноним 22/09/16 Чтв 12:36:15 #63 №846019 
Господа, я в сомнениях.

Есть базовый класс с набором автосвойств.

Есть класс-наследник с тем же набором свойств, но с заданными значениями по умолчанию.

Правильно ли я понял, что в базовом надо сделать их виртуальными, а в наследнике перезаписать?
Аноним 22/09/16 Чтв 12:59:45 #64 №846030 
>>846019
если у наследника они также станут автосвойствами, то, понятное дело - нет
оверрайд нужен для внутреней логики, а не значения. прост записывай нужные тебе значения в конструкторе по-умолчанию
Аноним 22/09/16 Чтв 13:01:24 #65 №846031 
>>846030
Тхэнкс
Аноним 22/09/16 Чтв 14:14:51 #66 №846050 
>>846030
Что-то совсем не варит котелок. Вот что писать для того, чтобы у наследника по умолчанию name вася было? И чтобы вдруг он потом подрастет и будет не вася, а василий егорович?

http://pastebin.com/WZWGU7Sh
Аноним 22/09/16 Чтв 15:12:38 #67 №846080 
14745463586640.png
Проблема с таймером. Нужно написать маленькую программку. Задать время, допустим 4 часа и интервал, допустим один час. Каждый час она должна выполнять определенное действие. Необходимо, чтобы она выполнялась каждый день при запуске учётной записи пользователя. Действие напогромировал. Для того чтобы это всё регулярно включалось, я так понял нужно создать службу. Сделал, глянул как устанавливать службу. А теперь главная проблема. Как хранить таймер? Допустим он был включен, пользователь выключил компьютер. Прошло какое-то время он включил, как продолжить отсчёт с того же времени? Сколько не гуглю не знаю как это запихнуть в службу и к какому времени привязаться? Хорошо, изначально дёрнуть системное, а потом как защититься от подмены? Есть какие нибудь статьи на эту тему?
Аноним 22/09/16 Чтв 15:33:16 #68 №846092 
>>846050
https://dotnetfiddle.net/AhV1pM
Аноним 22/09/16 Чтв 15:36:42 #69 №846095 
>>846080
Можешь писать последнее время запуска в текстовичек.
Вариант в лоб — Thread.Sleep().
Другой вариант: консольное приложение и настроить виндовый шедулер.
Аноним 22/09/16 Чтв 15:44:32 #70 №846098 
>>846092
От души, брат. А мне оказывается вообще не это надо было. Я ебанутый, мне для ведения справочников надо было, а я теплое с мягким попутал. Спасибо еще раз, охуенный тред
Аноним 22/09/16 Чтв 16:12:23 #71 №846107 
>>846098
>А мне оказывается вообще не это надо было
Так обычно и бывает
Аноним 22/09/16 Чтв 16:34:14 #72 №846121 
>>845979
Ну и при чем тут это? В любом случае там или запятая должна быть или соеденитель.
Аноним 22/09/16 Чтв 22:54:03 #73 №846426 
>>845191
Не еби мозгу, читай тут:
http://www.akadia.com/services/dotnet_delegates_and_events.html#Multicasting
Аноним 22/09/16 Чтв 22:54:12 #74 №846427 
Подскажите как проверить символ на то алфавитный он или нет?
Проверка вроде @char == [?принадлежность к алфавиту?]
Аноним 22/09/16 Чтв 22:58:05 #75 №846431 
>>846427
if (char.IsLetter(char c))
Аноним 22/09/16 Чтв 22:58:35 #76 №846432 
>>846431
хотя нет, это на принадлежность к юникоду. делай свой метод, хули ты
Аноним 22/09/16 Чтв 23:31:37 #77 №846452 
>>846427
Regex to the rescue!
sageАноним 22/09/16 Чтв 23:43:59 #78 №846455 
14745770401520.png
>>846431
Для каких случаев IsLetter будет неправильно работать?
Аноним 22/09/16 Чтв 23:45:55 #79 №846456 
>>846455
Для твоих https://dotnetfiddle.net/LLIj5L
Аноним 23/09/16 Птн 01:05:56 #80 №846482 
>>845819
Коннект не требует никаких ресурсов, кроме мизера памяти, а вот создание и разрыв коннекта - это ресурсоемкая операция, от которой стараются избавится (например keepalive)
Если говорить про ef, то в стандартном его поведении ничего не разрастается
Аноним 23/09/16 Птн 01:28:03 #81 №846489 
>>845932
Как ты себе это представляешь?
Аноним 23/09/16 Птн 01:31:15 #82 №846490 
>>845917
Пасс код? Но я не хочу делать приятно макаке, шалун
Аноним 23/09/16 Птн 01:46:42 #83 №846492 
>>846095
Thread . Sleep? Ты позоришь честь этого треда
>>846080
https://msdn.microsoft.com/ru-ru/library/system.timers.timer(v=vs.110).aspx
Это чем не подходит?
Аноним 23/09/16 Птн 09:06:01 #84 №846529 
>>846489
Ты не очень умный?
Аноним 23/09/16 Птн 13:46:32 #85 №846628 
>>846431
Char.IsLetter - то, что нужно. Спасибо!
До этого пытался через regex, но не совсем понял как правильно его использовать в if
Аноним 23/09/16 Птн 14:00:35 #86 №846637 
>>846628
regex'ы не в иф блоках используются вроде. они возвращают строку, обработанную согласно параметрам regex'а.
Аноним 23/09/16 Птн 14:32:32 #87 №846650 
Подскажите, где достать GTK# for .NET для макоси?
Скачал Xamarin и Mono, но гтк найти не могу, хотя бы в виде исходников
Аноним 23/09/16 Птн 14:34:13 #88 №846653 
>>846650
Он ставится автоматически с Xamarin Studio
Аноним 23/09/16 Птн 14:37:21 #89 №846655 
>>846653
А последовательность какая? Сначала Mono или потом?

Как проверить, что все компоненты работают? захеллоувордить? извините, что нуб
Аноним 23/09/16 Птн 15:02:18 #90 №846661 
>>846628
>>846637
Regex.IsMatch, наркоманы
Аноним 23/09/16 Птн 15:23:44 #91 №846670 
14746334244180.png
>>846655
1) Качаешь установщик https://www.xamarin.com/download
2) Запускаешь установщик, он сам ставит mono/gtk/android sdk
3) Запускаешь Xamarin Studio, выбираешь пункт "New Project" -> "Other" -> "GTK"
Аноним 23/09/16 Птн 16:06:22 #92 №846698 
>>846492
Я же сказал — вариант в лоб. В случае если не интересует точность интервалов.
Аноним 23/09/16 Птн 16:12:18 #93 №846706 
>>846492
Я могу его хранить в службе? А если мне нужно поменять интервал мне надо пересоздать службу с новым значением таймера или можно как-то изменить?
Аноним 23/09/16 Птн 16:59:18 #94 №846747 
14746391589430.jpg
После нескольких неудачных собеседований впал в депрессию и забил на программирование. Целый год нихуя не делал, нихуя не учил. Сейчас вот потихоньку вылажу из этого говна, вновь начал читать Троелсена и вспоминать забытое. Так вот, хочу еще параллельно начать наворачивать литературу по джаваскрипту. Нормальное решение, или лучше оставить на потом?
Аноним 23/09/16 Птн 17:02:50 #95 №846751 
>>846747
почему неудачных? какой бэкграунд?
Аноним 23/09/16 Птн 17:05:37 #96 №846754 
>>846747
>джаваскрипту
Не будь говноедом, начинай хотя бы с TypeScript
Аноним 23/09/16 Птн 17:16:18 #97 №846761 
>>846751
>почему неудачных?
Плохо дается теория, хоть я и зубрил ее, на теоретические вопросы на собеседовании мог только мычать. Обычно было так - hh дает мне тестовое задание, я его делаю, зовут на собеседование, на котором я опять обсираюсь.
>какой бэкграунд?
Закончил курсы погромирования, никакого опыта реальной работы нет. Образование средне-специальное.
Аноним 23/09/16 Птн 18:43:25 #98 №846820 
Подскажите годных книг по VB для вообще полного нубаса. Чтоб и за синтаксис пояснили и про ООП(в рамках бэйсика конечно же) без всяких "ехал инкапсуляция через абстракцию видит инкапсуляция в полиморфизме наследование сунул инкапсуляция в абстракцию наследование инкапсуляция ипнкапсуляцию за инкапслуляцию инкапсулировала".
И можно с примерами работы с .NET.
Аноним 23/09/16 Птн 19:08:45 #99 №846841 
>>846820
книг не знаю, но знаю норм такой мануал. берёшь, короче, пишешь код на любимом сисярпе, прогоняешь его через ILSpy, получаешь код на VB. показываешь работодателю/преподу гришь о смотри ясделяль. ну или если тебе нужно разобраться в коде - та же хурма, перегоняешь интересующий блок с vb на c# и вуаля. базарю я синьёр помидор
Аноним 23/09/16 Птн 19:16:08 #100 №846846 
>>846841
Ну, блядь, ты просто гений. Мне нужно конкретно гайд для обучения конкретно нуба программированию на бэйсике. Мне не нужен готовый код, готовый сам смогу "добыть". А вот книги толковой не могу.
Аноним 23/09/16 Птн 19:50:41 #101 №846871 
Есть список объектов, как с помощью linq найти объект с максимальным значением одного поля. Ебучий min max возвращает само значение поля, а мне нужен весь объект.
Аноним 23/09/16 Птн 20:34:06 #102 №846892 
>>846529
Да, зато ты, видимо, пиздец тупой
protected internal = protected И internal
Как может быть или? В одном случае protected, а в другом internal?
Аноним 23/09/16 Птн 20:37:33 #103 №846894 
14746522532720.jpg
14746522532731.jpg
Сломался деббагер в студии.
Аноним 23/09/16 Птн 20:38:43 #104 №846895 
>>846698
Проблеиа не в неточности, а в твоей быдлиности: ты создаешь поток, который делает... нихуя, но при этом ты выделяешь на него ресурсы: память под стэк и другие плюшки, процессорное время (контексты все равно переключаются). Один такой поток в системе, вроде и не страшно, но если бы все так писали, как ты, я бы не пользовался бы пекой
Аноним 23/09/16 Птн 20:40:44 #105 №846898 
>>846894
А все, это из-за знака ' в названии, лол.
Аноним 23/09/16 Птн 20:40:56 #106 №846899 
>>846706
С чего в службе нельзя хранить переменные?
Я не знаю, кури мсдн, я просто спросил чем не устраивает
Аноним 23/09/16 Птн 20:47:23 #107 №846906 
14746528438700.jpg
>>846871
А мне сам объект возвращает. Может ты с IComparable проебался?
Аноним 23/09/16 Птн 20:51:47 #108 №846916 
14746531071400.jpg
14746531071451.jpg
Max работает, а Min не работает.
Аноним 23/09/16 Птн 20:56:01 #109 №846919 
14746533614620.jpg
>>846916
>listOfObjects.Min() + "\t" + listOfObjects.Max().someField)
Вот поэтому из меня никогда не получится нормального программиста.
Аноним 23/09/16 Птн 21:33:05 #110 №846944 
>>846892
Модификаторы доступа показывают откуда можно получить доступ к методу, в одном случае из наследованных классов, а в другом из классов в той же либе.
Аноним 23/09/16 Птн 21:44:56 #111 №846955 
>>846906
> IComparable
> Решил такой писать на функциональном линке
> Нужно реализовать интерфейс @ Нельзя лямбды
Аноним 23/09/16 Птн 22:00:28 #112 №846961 
14746572284900.jpg
>>846955
>listOfObjects.First( y => y.someField == listOfObjects.Max(r => r.someField))
Аноним 23/09/16 Птн 23:06:53 #113 №847013 
14746612132360.jpg
>шел 2016 год
>в фреймворк добавляют кучу всякого сахарного говна, но до сих пор нет реализации простейшего дерева
Аноним 23/09/16 Птн 23:12:46 #114 №847020 
>>847013
Мы тут максимальный элемент в списке не можем найти, а ты уже про деревья
Аноним 24/09/16 Суб 00:00:54 #115 №847050 
>>846490
>Пасс код?
Нет/
Аноним 24/09/16 Суб 00:15:19 #116 №847059 
>>846944
А теперь... что если их поставить вместе, Маня, как тебя в вопросе и спрашивают
Аноним 24/09/16 Суб 00:17:10 #117 №847061 
14746654306620.png
>>846961
SEQUENCE CONTAINS NO ELEMENTS
Аноним 24/09/16 Суб 00:17:22 #118 №847063 
>>847050
Отвечай, не томи
Аноним 24/09/16 Суб 00:19:27 #119 №847066 
>>846871
Install-Package morelinq

https://dotnetfiddle.net/saAaLG
Не могу разобраться, почему фиддлер не хочет компилировать, но в студии пример работает.
Аноним 24/09/16 Суб 00:19:40 #120 №847068 
>>847059
Не меня спрашивают, я пришел к словам попридираться.
> can be accessed by any code in the assembly in which it is declared, or from within a derived class in another assembly
Аноним 24/09/16 Суб 00:31:30 #121 №847073 
>>847066
>// MoreLINQ - Extensions to LINQ to Objects
>// Copyright (c) 2008 Jonathan Skeet. All rights reserved.
Джон Скит в треде, все на SO!
Аноним 24/09/16 Суб 00:37:49 #122 №847074 
Шарпач, есть коллекция из n элементов Node, у которого есть поля Id и ParentId. И есть произвольное пустое дерево. Я могу вставить в него все элементы за O(n^2). Как вставить быстрее?
Аноним 24/09/16 Суб 03:44:56 #123 №847129 
>>847074
Если n очень большое, то отсортировать по Id и искать ноды бинарным поиском.
Аноним 24/09/16 Суб 04:56:24 #124 №847132 
>>847066
https://dotnetfiddle.net/4rTRkZ
Аноним 24/09/16 Суб 06:16:48 #125 №847141 
14746870085260.jpg
>>847061
Только если лист изначально пуст.
Аноним 24/09/16 Суб 08:22:12 #126 №847155 
14746945330150.png
>>847132
Я бы написал свой
http://pastebin.com/BJsAjJV7
метод-расширение и положил бы в папочку /Commons/
Аноним 24/09/16 Суб 08:39:33 #127 №847160 
>>847155
Что за шрифт?
Аноним 24/09/16 Суб 08:44:13 #128 №847162 
>>847074
Сортани коллекцию таким образом, чтобы корень был в середине, слева все левые поддеревья, корень которых посередине между началом и главным корнем (1/4), то же самое с правой стороны. Начинай строить дерево с корня, потом поддеревья
Аноним 24/09/16 Суб 09:00:11 #129 №847165 
>>847160
https://github.com/i-tu/Hasklig (размер 15) + включенные лигатуры в VSC
Аноним 24/09/16 Суб 09:01:18 #130 №847166 
>>847165
Спасибо.
Аноним 24/09/16 Суб 11:39:17 #131 №847197 
>>847162
>>847129
Но дерево не бинарное. Оно произвольное, то есть у каждого узла может быть k детей.
Аноним 24/09/16 Суб 23:35:26 #132 №847560 
Почему нельзя сделать так, чтобы анонимный тип как бы реализовывал интерфейс? Не хочется кучу бесполезных классов писать.
Аноним 25/09/16 Вск 02:23:28 #133 №847600 
>>847560
Потому что это не java и тут есть нормальные делегаты и лямбды.
Аноним 25/09/16 Вск 16:24:45 #134 №847670 
14748098855310.png
Сап, шарпёры. Нужна ваша помощь. Здесь мне подкинули тестовое задание на программиста стажера за 200$\месяц, вот пилю потихоньку (хуй успею, ибо параллельно ебашу эникеем).
Короче, всю жизнь не комментил свой код, а сейчас задумался, ведь есть есть жы некий годный стандарт комментирования. Анон, реквестирую кусок кода с годными комментариями.

Аноним 25/09/16 Вск 17:05:48 #135 №847717 
>>847670
Для публичного API используй XmlDoc (то, что у тебя на скрине). Внутри кода комментарии не нужны - код должен быть самодокументирующимся. Исключение - какая нибудь сложная хуйня, которая будет неочевидна, как бы ты её не расписывал.
Аноним 25/09/16 Вск 17:25:54 #136 №847732 
>>843711 (OP)
UWP вообще как? Есть с ним жизнь без Store? В Магазин хентай пускают? Или дальше на WPF сидеть?
Аноним 25/09/16 Вск 18:31:35 #137 №847763 
>>847732
а на wpf жизнь есть?
Аноним 27/09/16 Втр 08:38:56 #138 №847790 
Шалом, уважаемые.

В спецназе языков программирования 1с есть элемент "поле ввода", к которому прилагается кнопочка "обзор", в результате этот элемент может и как комбобокс в выпадающий список значения давать, и как опенфайл работать, только открывая другую форму.
А чем это в C# достигается? Что-то я потёк уже от размышлений, неужели кнопочку отдельно приклеивать?
Аноним 27/09/16 Втр 13:25:53 #139 №847809 
>>847790
Ну, в C# есть разные графические фреймворки для декстопа, в основном это winforms и wpf. ну ещё UWP. Насколько я знаю, в этих фреймворках нет того, что нужно тебе изподкаропки, но во всех трёх фреймворках есть возможность клепать кастомные контролы, но в wpf и uwp возможности ГОРАЗДО больше для этого, чем в winforms. короче говоря, можешь сделать просто конфетку ещё пизже чем на твоём 1с, но делать придётся самому, да. отсюда следует, что может получиться и не конфетка вовсе, а просто пиздец нахуй блять я у мамы фронтенд
Аноним 27/09/16 Втр 15:02:06 #140 №847815 
О, братья!

Где почитать про правильную структуру проекта? Тысячи форм и сотни классов уже пугают, хочется упорядочивания. Если просто по папкам их распихаю, там же надо еще и директивы везде переписывать? Или папки на навигацию никакого влияния не оказывают? Или вообще проект разбить на несколько проектов, в одном формы, в другом классы, в третьем гробгробкладбище имейджез?
Аноним 27/09/16 Втр 15:15:44 #141 №847816 
>>847815
при помещении в папку уже существущего файла .cs, неймспейс не меняется. а вот при создании нового файла в папке неймспейс соответствует папке типа namespace projectName.folderName { }
Аноним 27/09/16 Втр 17:49:07 #142 №847830 
Поясните, плиз, по хардкору, что это за GTK, GTK+, GTK+ 2.0?

Я понимаю, что такое .Net - платформа с дохуя библиотеками, для винды, которая .Net код компилирует налету в ассемблерный код, но строго для винды.
А GTK - это какая-то кроссплатформенная платформа для других, кроме винды?

Или я чего-то не догоняю.
Провалил из-за этого собеседование
Аноним 27/09/16 Втр 18:01:47 #143 №847831 
>>847830
ты бы хоть Троелсена первую главу открыл, чисто для интереса.
Аноним 27/09/16 Втр 19:00:16 #144 №847846 
Когда сольют русик 7 редакции Троелсена? Или уже?
Вроде продают и на складах в наличии.
Аноним 27/09/16 Втр 20:02:30 #145 №847868 
>>846747
Тут главное упорство, мне за 3 месяца поиска работы было три приглашения на собеседование и с третьего зашло.
Аноним 27/09/16 Втр 20:15:23 #146 №847869 
14749965239930.png
14749965239931.png
14749965239942.png
Есть тут магистры WPF? Может кто объяснить, что происходит, когда устанавливают Binding без указаний параметров будь то в xaml'e или в c# коде? Ну например, есть дататемплейт:
<DataTemplate x:Key="zzz">
   <CheckBox Content={Binding} />
...
Вот здесь биндинг без параметров, то есть ни path, нихуя. Откуда в таком случае будут браться значения? Из DataContext'а, казалось бы? Но вот, например, в пикрелейтедах он даже не указывается. В 1 случае в дататемплейте биндинг указывается абсолютно пустым, только у контрола, для которого определяется дататемплейт, указывается ItemsSource. НО! если попробовать в дататемплейте в биндинге элемента указать Path=ItemsSource или Path=DataContext.ItemsSource, то дататемплейт будет работать некорректно (грубо гря, контент чекбокса не забиндится). Во 2 случае всё делается из c# кода ибо так приближено к боевым обстоятельствам. В настоящем проекте по определённым причинам я считаю, что меньше кода выйдет, если определять дататемплейты динамически, и даже если там указать в свойстве чекбокса ContentProperty просто пустой new Binding(), то сука DataTemplate будет работать корректно, то есть для каждого чекбокса определятся соответствующие значения. Ещё раз, вопрос: какого хуя? Почему в "пустом" биндинге всё равно правильно привязываются значения? Как он определяется по дефолту?
Аноним 27/09/16 Втр 20:31:30 #147 №847874 
Ок, почитаю.
Аноним 27/09/16 Втр 22:48:47 #148 №847904 
>>847869
Отбой. Кажется, нашёл ответ на свой вопрос.
Аноним 27/09/16 Втр 23:46:05 #149 №847915 
>>847717
>Исключение - какая-нибудь сложная хуйня, которая будет неочевидна, как бы ты её не расписывал
Это значит что ты пидар что написано криво и есть смысл переписать нормально.
Аноним 27/09/16 Втр 23:48:10 #150 №847916 
14750092906440.jpg
>>847869
Омакконелмой как же я проблевался с твоих длинных портянок.
Аноним 28/09/16 Срд 07:35:12 #151 №847953 
14750373126610.png
Сап, дотнетач. Помоги мне, я немного заебался. В общем, мне надо десериализовывать однотипные JSON с сайта. По некоторым причинам я не хочу юзать сторонние либы для этого, поэтому приходится юзать DataContractJsonSerializer. Я сгенерировал классы, они работают, но не для всех JSON. Некоторые вылетают с SerializationException:

- Ошибка десериализации объекта. Ожидался маркер """, но найден "Ñ".
(разумеется, символа Ñ там нигде нет)

Я пробовал перегенерировать классы по ошибочному JSON, но это не помогает. Можно ли как-то это дебажить? Хотя бы узнать, на каком месте/оффсете парсер загибается? В инете ничего дельного не пишут, поля LineNumber и LinePosition в эксепшене равны 0.
Аноним 28/09/16 Срд 09:11:46 #152 №847966 
>>847953
.net 4?
Аноним 28/09/16 Срд 09:13:10 #153 №847967 
>>847966
3.5sp1, vs2008 Увы.
Аноним 28/09/16 Срд 09:16:01 #154 №847968 
>>847967
Баг фреймворка, починили в 4.5
http://stackoverflow.com/questions/23909231/datacontractjsonserializer-readobject-sometimes-throws-the-token-was-expected
Нужно просто обновиться / не использовать плохие входные данные / использовать json.net
Аноним 28/09/16 Срд 09:57:06 #155 №847976 
>>847968
Да, открыл тот же проект в 15 студии, сменил версию на 4.6, всё прекрасно заработало. Спасибо тебе, анон, что прекратил мои попытки решить оказывается нерешаемую проблему. Буду выбирать из двух зол, или включать стороннюю либу, или таки переходить на другую студию и версию.
Аноним 28/09/16 Срд 10:28:46 #156 №847980 
>>847976
Тащемта тебе надо и новую студию поставить на этот раз английскую, потому что пиздец, и либу подключить, тому что она быстрее.
Аноним 28/09/16 Срд 11:10:45 #157 №847990 
Как "апгрейднуть" инстанс базового класса в сабкласс? Написать оператор конверсии нельзя - компилятор его не примет, хотя было бы очень удобно. Писать конструктор/метод в сабклассе, принимающий параметром инстанс базового и писать копирование свойств?
Аноним 28/09/16 Срд 11:32:37 #158 №847994 
Явно/неявно переопределить оператор каста к сабклассу в базовом классе, а потом использовать конструкцию типа
BaseClass BC = new BaseClass();
SubClass SC = (SubClass)BC;
Аноним 28/09/16 Срд 11:41:32 #159 №847996 
14750520924070.jpg
Какие профиты переходя с 13 студии на 15? Знакомые спрашивают хули я еще не обновился, а я сижу и думаю "а нахуй оно мне надо".
Аноним 28/09/16 Срд 11:44:41 #160 №847998 
>>847996
c# 6.0 изподкоробки, там же всякие расширения для юнити, андроид СДК и ещё чо то.
Аноним 28/09/16 Срд 11:51:01 #161 №847999 
>>847998
А для аспа что нибудь полезное-новое-модное-молодежное ввели?
Аноним 28/09/16 Срд 11:52:40 #162 №848000 
>>847999
а хз. я мимостудент, дальше wpf не заезжал ещё.
Аноним 28/09/16 Срд 11:55:24 #163 №848002 
>>848000
Ясно. На новую версию без переустановки шинды перейти возможно?
Аноним 28/09/16 Срд 11:56:04 #164 №848003 
>>847994
>Написать оператор конверсии нельзя - компилятор его не примет
Аноним 28/09/16 Срд 11:56:49 #165 №848005 
>>848002
а схуяли нельзя? сносишь к ебеням скачивать коммьюнити версию с сайта майкрософт или покупаешь на торрентах алтимейт и вперод.
Аноним 28/09/16 Срд 11:58:11 #166 №848006 
>>847996
Увеличение тормозов. Ты купишь новое железо, чтоб комфортно работать. Мс доставляет профиты не тебе, а себе а производителям железа. 2008 форева, даже на старом железе работает крайне шустро.
Аноним 28/09/16 Срд 12:00:47 #167 №848007 
>>848005
Когда с 10 на 13 переходил прошлось полностью шинду сносить, потому что не вставало. А сейчас что, просто студию удалил и новую накатил? Пакеты вилкой чистить не нужно?
Аноним 28/09/16 Срд 12:02:33 #168 №848008 
>>848006
У меня i5 2500k, 8 гиг оперативы и ссд. Да даже на моем ноуте с одним ядром 13 студия не тормозила, я хз на каком динозавре ты там сидишь.
Аноним 28/09/16 Срд 12:04:48 #169 №848009 
>>848007
хз, я свой путь начал сразу с 2013. никаких проблем не было, только скопировал папку с проектами в новую директорию vs2015. НО! помни, я мимостудент, и, возможно, не использовал полностью функционал VS как ты мог это делать в энтерпрайзе. мб у тебя там какие нибудь охуенные зависимости, завязанные конкретно на vs2013.
Аноним 28/09/16 Срд 12:06:31 #170 №848010 
Какое последние издание у Троелсена? Седьмое?
Аноним 28/09/16 Срд 12:30:47 #171 №848014 
>>848008
У меня i5-4460, тоже 8 гб оперативки, правда без ссд. 2008 не думает вообще, грузится за 1-3 секунды, по нажатию F5 тоже практически мгновенно дебаг запускается. А вот 2015 уже ворочается и думает, иногда по 3-5 секунд. Особенно при запуске дебага притормаживает.
Аноним 28/09/16 Срд 12:36:53 #172 №848015 
>>848014
>правда без ссд
В этом твоя проблема.
Аноним 28/09/16 Срд 13:18:22 #173 №848021 
14750579025710.jpg
Ребятки, помогите, взялся делать инвентарь в простой игре, но не получается, Есть оружие, щиты и тд, для каждого свой класс. Все это дело было занаследовано от класса Item, и вот накидал Item'ы в инвентарь, все норм, а потом захотел сделать так чтоб в ячейку для оружия перетащить Item. Но Item не имеете параметра "сокет", дабы определить подходит ли в слот. Дебаг показывает что объект класса Weapon, но к свойствам доступа нет, и это понятно, в классе Item они же не прописаны. Как тут надо делать? Ведь шмот в инвентаре должен быть однородным, да? И класс Item для этого подходит? Но как тогда сделать так чтоб было понятно что в Item засунули оружие, а не щит к примеру, и использовать свойства оружия?
Аноним 28/09/16 Срд 13:53:04 #174 №848029 
14750599846810.jpg
>>848021
твои пушки должны реализовывать интерфейс Iweapon. Потом смотришь, реализовывает ли item интерфейс, если да, разрешаешь использование в качестве оружия.
Аноним 28/09/16 Срд 14:01:28 #175 №848030 
>>848021
А нахуй вообще нужно оружие в инвентаре, которое в слот запихнуть нельзя?
Аноним 28/09/16 Срд 14:23:14 #176 №848034 
>>848030
>А нахуй вообще нужно оружие в инвентаре, которое в слот запихнуть нельзя?
Как это? Как раз оружие и хочу запихнуть в слот, но нужно сначала узнать подходят ли параметры оружия.

>>848029
>твои пушки должны реализовывать интерфейс Iweapon. Потом смотришь, реализовывает ли item интерфейс, если да, разрешаешь использование в качестве оружия.
Так, я тупой, и не всегда понимаю. Есть класс "героя", у которого есть поля типа Weapon, Shield, Engine. Вот эти все итемы (Weapon, Shield, Engine) надо класть в инвентарь/ одевать. В данные момент они все имеют класс-родитель Item, что-то подсказывает это неправильно. Если я реализую интерфейс Iweapon в классе Item, то все итемы будут уметь стрелять, не?
Аноним 28/09/16 Срд 14:26:10 #177 №848035 
>>848034
Ты говоришь что у тебя у класса оружия есть поле "сокет". Зачем он?
Аноним 28/09/16 Срд 14:32:51 #178 №848036 
>>848035
>Ты говоришь что у тебя у класса оружия есть поле "сокет". Зачем он?
Сокет - отдельный объект в классе Hull, сокет выполняет роль слота и имеет несколько разновидностей, нужно узнать у оружия какой сокет оно поддерживает, и если да, добавить в List<Weapon>.
Аноним 28/09/16 Срд 14:37:22 #179 №848037 
>>848036
Если каждый наследник класса Item использует поле "сокет", и самому Item это поле тоже необходимо, то пиши его именно в Item.
Аноним 28/09/16 Срд 14:44:15 #180 №848041 
>>848037
>Если каждый наследник класса Item использует поле "сокет"
Не, в том то и дело что сокет нужен только для орудий, у Engine должна быть своя атмосфера. Короче говоря разные классы, которые как-то нужно засунуть в один контейнер(инвентарь) и взаимодействовать(вставлять в слоты) с ними.
Аноним 28/09/16 Срд 15:29:44 #181 №848049 
>>848041
ладно, а почему бы тогда не создать классы наследники от item: Shield, Weapon, Engine?
Аноним 28/09/16 Срд 16:31:42 #182 №848064 
>>848049
>Shield, Weapon, Engine
Мало похожие классы, класс-суперпомойку говорят делать не есть хорошо.
Аноним 28/09/16 Срд 16:34:58 #183 №848066 
Ну то есть мне же придется писать сокет в итеме, иначе я не смогу получить доступ, и сокет же нахуй не всрался в шите и двигателе.
Аноним 28/09/16 Срд 16:46:36 #184 №848069 
>>848064
Как вариант сделай еще класс usableItem, который будет наследоваться от обычного item. И пиши в нем что хочешь.
Аноним 28/09/16 Срд 17:59:19 #185 №848095 
>>848021
>>848029
поддвачну этого.

Или предлагаю вот тебе что сделать. заводишь поле
ItemTypeEnum itemType;

где
public enum ItemTypeEnum
{
Shit,
Weapon,
Gear,
// итд
}

лично я так делал, а не ебся с тоннами наследований, особенно, когда быстро решительно надо было создавать новые типы.
Но это будет работать строго, если у тебя градации самих вещей одного и того же типа нет.
Например у оружия - топор, меч, залупа,дилдак.

Если такое будет, то делай через наследование.
Аноним 28/09/16 Срд 19:21:39 #186 №848122 
>>843711 (OP)
Почитал ваш гайд
Начинаю с
The C# Player's Guide
CLR via C#
Pro WPF 4.5 in C#
Multithreading in C# 5.0 Cookbook
Потом дрочу эскьюэль, учусь пользоваться гитхабом и ищу какую-то джуновскую вакансию?
Алсо, про первую книгу написано что она для ньюфагов в шарпе, а если я ньюфаг в программировании? ну когда-то там писал на сях сортировку пузырьком, про массивы что-то знаю, но это не считается
Или мне начинать изучение сишарпа с с?
Аноним 28/09/16 Срд 19:35:06 #187 №848125 
>>848122
Если умеешь работать с типами данных, циклами-хуиклами, массивами и условными операторами типа if else switch и тд, то можешь сразу учить шарп.
Аноним 28/09/16 Срд 20:11:22 #188 №848139 
>>848021
динамикодрисня multiple dispatch решительно врывается в тред!
https://dotnetfiddle.net/6jFDPm
Аноним 28/09/16 Срд 20:19:25 #189 №848143 
Короче, поцоны, целый день пытаюсь понять ,и нихуя. Можно сделать с помощью рефлексии, но все говорят это обсёр. Вот блядь я либо чтото упустил, либо не могу поять как оно работает.
1. Ебаные разные шмотки должны хранится в списке , типа так List<Item> , да? Вот мы берем и ХУЯК добавляем пушку в инвентарь методоом items.add(new Weapon()). м?

2. Ну и как теперь одеть пушку в слот, который треубет тип Weapon, если я даже не могу посмотреть в List<item> мощность пушки. А даже если бы мог, через свойство, то всеравно итем стрелять то нихуя не умеет. И НЕ влезет в поле типа Weapon, где изъян?
Аноним 28/09/16 Срд 20:20:30 #190 №848144 
>>848139
Кк, ща буду читать, после того как помоюсь/
Аноним 28/09/16 Срд 20:20:52 #191 №848145 
>>848144
Так потом опять мыться придется.
Аноним 28/09/16 Срд 20:21:45 #192 №848146 
>>848145
Ну зато вонять не буду
Аноним 28/09/16 Срд 20:23:37 #193 №848147 
14750834171280.gif
>>848146
Аноним 28/09/16 Срд 20:37:02 #194 №848151 
>>848139
Ага, но вот варлока распидарасила рога голая ,выпал стафф,сворд и спелбук, не мог бы ты,бро, добавить их в сумку, вывести статы сворда в консоль и одеть стафф на рогу. Само собой рога может только стафы носить, но ты все равно попробуешь одеть сворд.
Аноним 28/09/16 Срд 20:45:39 #195 №848152 
>>848143
Ты довен штоле?
https://dotnetfiddle.net/vZwtMO
Аноним 28/09/16 Срд 20:50:36 #196 №848154 
>>848152
Так я просил спеллбук и стафф положить вместе, (разные типы объектов)
Аноним 28/09/16 Срд 20:54:55 #197 №848155 
>>848152
ой, не, все норм
Аноним 28/09/16 Срд 21:07:47 #198 №848158 
>>848151
Вывести статы итема - самое простое, тут же single dispatch.
В остальном просто добавляешь правило
https://dotnetfiddle.net/jEJELz
Аноним 28/09/16 Срд 21:10:21 #199 №848159 
>>848154

foreach (Weapon i in inventory)
{
if (i is Staff)
//шось тут
else if (i is Spellbook)
//шось тут
else
//эксепшон
}

Вот тебе решение в лоб. Может кому будет не лень что нибудь другое придумать.
Аноним 28/09/16 Срд 21:24:13 #200 №848163 
>>848159
Вот когда перебираю веапоны, то заебись, прям вообще нахуй, доступ к параметрам есть, и можно проверить сокет. НО а если перебирать итемы, то уже хуй, ведь в рюкзаке хотелось держать именно итемы, там же не тольько оружия будут лежать,а еще и броня, без сокетов блядь! Короче тут либо делать в классе-родителе поле сокет, и глушить его в классе броня, либо я вообще хуй знает. Проблема не решена.
Может рефлексия?
Аноним 28/09/16 Срд 21:25:30 #201 №848164 
Или нахуй эти итемы всрались? Держать списки для оружия, и дял брони разные..
Аноним 28/09/16 Срд 21:37:37 #202 №848167 
>>848163
Блядь, да сделай .OfType<Weapon>()
Аноним 28/09/16 Срд 21:42:42 #203 №848175 
>>848167
Садись, два.
Аноним 28/09/16 Срд 21:44:10 #204 №848176 
>>848175
На словах ты Лев Толстой
Аноним 28/09/16 Срд 21:47:41 #205 №848177 
14750884613390.jpg
>>848167
Гляжу на пример в mdsn, делаю свой ArrayList, а у него нету метода OfType<T>()
Аноним 28/09/16 Срд 21:54:46 #206 №848180 
>>848177
>ArrayList
Где ты это говно раскопал, возьми List<T>
Аноним 28/09/16 Срд 22:06:37 #207 №848189 
>>848180
https://msdn.microsoft.com/ru-ru/library/bb360913(v=vs.110).aspx
Аноним 28/09/16 Срд 22:16:07 #208 №848192 
>>848189
Это все очень хорошо, только нахуя не generic коллекция в 16 году.
Аноним 28/09/16 Срд 22:22:00 #209 №848195 
>>848192
Хз, с листом не работало, пошел на мсдн глядеть, там с аррайлистом делали. Сейчас дошло что без подключения Linq не работает.
Аноним 28/09/16 Срд 22:31:59 #210 №848198 
>>848195
Извини пожалуйста, ты без решарпера там штоле сидишь?
Аноним 28/09/16 Срд 22:37:28 #211 №848201 
>>848198
Я на dotnetfiddle сидел вообще.
Аноним 28/09/16 Срд 23:05:40 #212 №848208 
14750931410150.png
Сишарпач, подскажи.
Что нужно установить/сделать чтобы подключить postgres? По идее в этом списке он должен быть (пикрелейтед). Npgsql установил.
Аноним 28/09/16 Срд 23:49:34 #213 №848224 
14750957745650.png
>>848208
В доках обещают что будет.
http://www.npgsql.org/doc/ddex.html
Только зачем?
Аноним 28/09/16 Срд 23:54:25 #214 №848227 
Отличный вопрос - где искать конторы в которых можно поработать на стажировке за нихуя удаленно? Точнее конечно за хуя - за опыт реальной работы в проекте и еще раз за опыт.
Аноним 28/09/16 Срд 23:58:28 #215 №848228 
>>848224
Да, я уже нашёл это. Пункт появился. Вроде даже работает. НО! Столбцы-то он извлекает, а вот данные - нет.
Ошибка:
Error in SELECT clause: expression near '"'.
Missing FROM clause.
Unable to parse query text.
Аноним 28/09/16 Срд 23:58:51 #216 №848229 
>>848227
> можно поработать на стажировке за нихуя удаленно
Ты главное фотку индуса не забудь к профилю по поиску работы приделать, иначе не возьмут.
Аноним 29/09/16 Чтв 00:06:44 #217 №848231 
>>848229
Уверен, что ты злой человек.
Аноним 29/09/16 Чтв 02:52:14 #218 №848245 
>>843844
> Console.WriteLine(i + ":\t" + array);
Что он у тебя вообще выводит? array
да-да, слоупок, только зашел
Аноним 29/09/16 Чтв 05:23:17 #219 №848262 
>>848198
А решарпер он вообще нужен? Сильно облегчает работу? Я вообще нихуя не программист, а админ. Мне шарп очень сильно полюбился, и поэтому я на нём клепаю много разной хуйни себе (и юзерам) для автоматизации и облегчения работы работаю на радиостанции, у нас тут плейлисты, логи выходов/невыходов и прочая хрень, которую обрабатывать надо. Последний раз вон даже add-in для экселя сделал. Сижу на голой 2008 студии и вообще не парюсь.
Аноним 29/09/16 Чтв 08:21:41 #220 №848267 
Шарпоанончики, поясните за Asp.Net. На нём можно написать веб игру? Ну то есть что бы он сгенерировал хтмл5 с канвасом и js скриптами? Или JS тоже надо учить? Или это всё вообще не так работает?
Аноним 29/09/16 Чтв 08:28:36 #221 №848270 
>>848267
> он сгенерировал
Что значит "сгенерировал"? Ты можешь юзать asp.net как бэкэнд (равно как и java-сервлеты, php или что-то ещё подобное), но саму игру тебе писать всё равно придётся.
Аноним 29/09/16 Чтв 08:38:22 #222 №848271 
>>848262
>add-in для экселя сделал
Ничоси ты админ. Вообще, решарпер не нужен, но с ним гораздо проще, вместо написания кода можно нажимать ctrl+space и alt+enter, и буквы сами на экране появляются.
Аноним 29/09/16 Чтв 09:06:47 #223 №848279 
>>848270
Уточню вопрос... Можно ли средствами asp.net выводить интерактивное анимированное содержимое в объеме достаточном для не очень сложной 2Д игры?
Аноним 29/09/16 Чтв 09:10:39 #224 №848280 
>>848279
Средствами asp.net можно выводить статичный html, для интерактивности и анимированности тебе нужно что-нибудь, что исполняется в браузере.
Аноним 29/09/16 Чтв 09:15:24 #225 №848281 
>>848280
Ясно, вопрос закрыт.
Аноним 29/09/16 Чтв 09:15:41 #226 №848282 
>>848280
И спасибо.
Аноним 29/09/16 Чтв 09:21:34 #227 №848283 
>>848280
Нет, стой, ещё один маленький вопрос. Средствами asp.net нельзя написать типа "вывести кнопку/квадрат/картинку с ID №1 с текстом "Нажми меня", и событием, что бы при нажатии на неё приходил ответ на сервер что пользователь с такими то куками нажал c ID №1", при этом asp.net сгенерировал бы хтмл страницу, на которой был бы скрипт js который бы это делал?
Аноним 29/09/16 Чтв 09:23:03 #228 №848284 
>>848283
Сдаётся мне, ты вообще не понимаешь, что такое asp.net, и что такое js, и в чём вообще различие между нии.
Аноним 29/09/16 Чтв 09:26:56 #229 №848285 
>>848284
я понимаю что такое js (немного, пол учебника прочитал), а вот что такое asp.net - не понимаю. Поэтому разбираюсь, стоит ли мне его учить (так как я немного знаю C#), что бы решить мою задачу или не тратить время.
Аноним 29/09/16 Чтв 09:28:35 #230 №848286 
>>848283
Ты можешь сделать страницу с кнопкой, при нажатии на которую, запрос пойдет на сервер и тебе вернется новая страница, на которой написано что ты пидор
Аноним 29/09/16 Чтв 09:31:15 #231 №848288 
>>848286
А я?
Аноним 29/09/16 Чтв 09:33:08 #232 №848289 
>>848286
Ясно, понятно. Спасибо.
Аноним 29/09/16 Чтв 09:36:28 #233 №848290 
14751309886910.jpg
>>848288
А ты нет.
Аноним 29/09/16 Чтв 13:53:09 #234 №848320 
>>848167
То что нужно, братишка, я просто не знал об этой хуйне. А есть такое же, только для элемента? Чтоб объекты класса Weapon, WeaponDirect и тд будут возвращать тру, остальные фолс, if (i.GetType() == typeof(Weapon)) , только веапоны в переборе пропускает, а надо еще и наследники.
Аноним 29/09/16 Чтв 14:01:25 #235 №848324 
АХ, это же вроде оператор is, да? Ебать меня в сраку раскаленным ломом, как просто то.
Аноним 29/09/16 Чтв 14:34:02 #236 №848333 
привет
Аноним 29/09/16 Чтв 15:02:14 #237 №848345 
>>848320
>if (i.GetType() == typeof(Weapon))
Хуйню какую то написал. Вот короче
https://dotnetfiddle.net/HqgpEL
Аноним 29/09/16 Чтв 15:07:20 #238 №848349 
Как решить следующую задачу: есть тип, который однозначно enum, но неизвестно какой и какие у него возможные значения, но известно, что у него есть атрибут [Flags]. Затем, нужно в текстовую строку запихать элементы перечисления, которые есть в заданном int. Вопрос: как это сделать, если перечисление неизвестно наверняка и вообще задано Type'ом? Зная конкретное перечисление, я бы сделал что то типа
if ((definiteEnum)someInteger).HasFlag(definiteEnum.asd))
dosmth

а вот как это делать с неопределённым типом?
Аноним 29/09/16 Чтв 15:15:34 #239 №848352 
>>848349
Определить тип GetTypeом не пробовал?
Аноним 29/09/16 Чтв 15:21:28 #240 №848354 
>>848352
Тип у меня заранее известен, и я знаю, что это enum (ну вернее сделал так, что ничем кроме энума это быть не может). Как мне получить static public методы у неизвестного типа, заданного объектом типа Type, если я знаю наверняка, что у него есть метод HasFlag(Enum value)? Мне надо получить характерные только для этого типа атрибуты, какетоблятьсделать? Я уже в штаны сру просто как конь ебаный помогите спасите звоните в скорую
Аноним 29/09/16 Чтв 15:25:13 #241 №848356 
14751519140670.jpg
Так, то что хотел узнал, но вот, у нас есть Item, и мы его пытаемся вставить в орудийный слот, если Item есть оружие, то ставим. А что если мы не знаем какого типа слот? Может то не орудийный слот, а для двигателя. Можно узнать какой тип у переменной? А потом проверить подходит ли Item для этого типа?
Аноним 29/09/16 Чтв 15:26:50 #242 №848357 
>>848354
Ладно, отбой. Вроде придумал.
Аноним 29/09/16 Чтв 15:27:52 #243 №848358 
>>848356
>>848345
Аноним 29/09/16 Чтв 15:37:42 #244 №848360 
>>848358
>foreach (UsableItem i in inventory.OfType<UsableItem>())

А что тут? Тут нихуя. Ну вот получили список <UsableItem>, а теперь нужно их поставить в слот, а тип слота неизвестный, тип слота к примеру<Staff>, но ты не знаешь что <Staff> это <Staff>, как узнать какого класса слот(переменная)?И после того как узнали, попробовать преобразовать <UsableItem> в <Staff> ?

НЕИЗВЕСТНО var;
foreach (UsableItem i in inventory.OfType<НЕИЗВЕСТНО>())
Аноним 29/09/16 Чтв 15:39:57 #245 №848361 
>>848360
Хули оно у тебя неизвестно? Ты не знаешь какие классы оружия создавал или что? Я твою мысль никак уловить не могу.
Аноним 29/09/16 Чтв 15:44:03 #246 №848363 
>>848361
Не, ну я вообще, для общего развития спрашиваю, разве не может быть так что тип переменной может быть неизвестен? Или как-то динамически изменяется что в итоге сам не знаешь что там может быть.
Аноним 29/09/16 Чтв 15:50:01 #247 №848364 
>>848349
>>848354
https://dotnetfiddle.net/C5MB4G
Аноним 29/09/16 Чтв 16:02:10 #248 №848366 
>>848360
Паттерны подъехали: https://dotnetfiddle.net/OGDyG2
Аноним 29/09/16 Чтв 16:10:18 #249 №848368 
>>848366
А как называется-то паттерн??
Аноним 29/09/16 Чтв 16:30:08 #250 №848372 
>>848368
Visitor pattern
Аноним 29/09/16 Чтв 17:59:11 #251 №848399 
Пачаны, поясните за "c#2010 ускоренный курс для профессионалов Трей Нэш". Узнал много интересной хуйни, но однако настораживает, что 2010. Вреда не будет от того, что он такой старый?
Аноним 29/09/16 Чтв 18:12:04 #252 №848407 
>>848399
Ну потом просто почитаешь, что добавили в 4.5 - 4.6, типа async/await и все.
Аноним 29/09/16 Чтв 21:24:54 #253 №848459 
Драч, помогай. Что за хуйня с этими dependencyproperty в wpf? Сделал кастомный контрол для DataGridTemplateColumn, дак вот, коллбэки вызываются каждый раз при появлении/сбросе фокуса на/с столбце, хотя изменений, на которые должны реагировать эти коллбэки, не происходит.
Аноним 29/09/16 Чтв 21:33:43 #254 №848460 
Чето устроился на работу и дома совсем лень кодить.
хотя когда я не работал, то тоже не особо кодил, хуй знает как меня такого дауна взяли, лол.
Аноним 29/09/16 Чтв 22:29:47 #255 №848475 
>>848459
Так, с этим пока хуй с ним. Сделал кастом контрол, который унаследовал от ComboBox'a. Чому он не может не отображаться нивкакую на окне, если всякой добавочной логики минимум? То есть вот прям вообще нихуя: создал просто кастом контрол через мастера VS, в XAML'е выкладываю его на окно, а он нихуя, пустой. ЧЯДНТ?
Аноним 29/09/16 Чтв 22:32:06 #256 №848477 
>>848475
Отбой, нашел причину.
Аноним 29/09/16 Чтв 22:42:45 #257 №848484 
>>848477
Собсна, проблема "Драч, помогай. Что за хуйня с этими dependencyproperty в wpf? Сделал кастомный контрол для DataGridTemplateColumn, дак вот, коллбэки вызываются каждый раз при появлении/сбросе фокуса на/с столбце, хотя изменений, на которые должны реагировать эти коллбэки, не происходит.
" так и не решена. я чёт вообще в ахуе, при повторной фокусировке на контрол в дататемплейт коламне конструктор кастомного контрола вызывается каждый раз, пиздецнахуй. как это лечить?
Аноним 30/09/16 Птн 00:35:57 #258 №848499 
Здравствуйте, господа.
Может мне кто-то помочь , готов заплатить немношк, если еще поясните как это сделать?

В общем, есть сайт по генерации лабиринтов http://www.mazegenerator.net/

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

Собственно вопрос. Как мне в программе отправить запрос за получение и сохранить картинку?
Прошу, помогите.
Аноним 30/09/16 Птн 03:36:11 #259 №848527 
>>848499
Устанавливаешь httpfox (или какое-нибудь другое дополнения для отслеживания запросов), запускаешь его, после чего генерируешь лабиринт. В списке появляется пост-запрос, который тебе нужен. Смотришь на его содержимое. А как отправить пост-запрос с нужными данными и обработать ответ с помощью кода, я думаю, ты сможешь загуглить.
Аноним 30/09/16 Птн 14:12:48 #260 №848541 
>>848527
хм, интересное решение. сегодня вечером попробую.
спасибо
Аноним 30/09/16 Птн 20:18:15 #261 №848675 
Сап /pr/. Решил вкатиться в .NET, поясните почему данный код не показывает возраст в консоли, а только имя?

Вроде все правильно делаю, не?


class Program
{
static void Main(string[] args)
{
PersonTest p1 = new PersonTest("Dick", 20);
Console.WriteLine(p1.personName, p1.personAge);
Console.ReadLine();

}

public class PersonTest
{
public String personName;
public int personAge;
public PersonTest(string name, int age ) { personName = name; personAge = age; }
}
Аноним 30/09/16 Птн 20:22:31 #262 №848678 
бамп
да я макака
Аноним 30/09/16 Птн 20:24:33 #263 №848679 
бамп
Аноним 30/09/16 Птн 20:40:23 #264 №848685 
>>848675
нет, неправильно
тот вариант консоле.врайтлайн, который ты взял, использует форматированные строки
Аноним 30/09/16 Птн 20:47:21 #265 №848688 
>>848685

Подскажи как исправить
Аноним 30/09/16 Птн 20:48:26 #266 №848689 
>>848688
Console.WriteLine(p1.personName + p1.personAge);
Аноним 30/09/16 Птн 20:49:09 #267 №848690 
>>848689

Спасибо, няша.
Аноним 30/09/16 Птн 23:34:13 #268 №848768 
Ребятки, короче сделал Итемы для корабля, инвентарь работает, но вот что, каждый итем вставляется в свой сокет. Корчое есть класс Item и класс Socket. У итема есть enum который говорит что это за итем вообще, и вот если итем Weapon, то оруийный сокет приводит Item в Weapon, и норм.А вот теперь сделать нужно обычные шмотки, пусть будет класс Devicе наследуемый от Item, но шмотки будут иметь уникальыне способности. Один итем чинить корабль, второй давать телепорт. И не совсем понятно как тут делать. Мне то и с оружием не понятно, класс веапон(который наследник итем) имеет пустой виртуальные метод FIre(), а его потомки уже переопределяют, и как-то некрасиво выходит. Или норм? Как делать правильно?
Аноним 30/09/16 Птн 23:49:41 #269 №848772 
Почему metanit.com в шапке нет?
Аноним 01/10/16 Суб 09:55:00 #270 №848836 
>>848772
ресурс хоть и хороший, но крайне поверхностно дающий сведения
тогда уж каждый высер в шапку будем включать

>>848768
наследованием в лоб в таких случаях ты упрешься в тупик достатощно быстро, что ты и сделал уже
Аноним 01/10/16 Суб 11:05:39 #271 №848842 
>>848836
>крайне поверхностно
>полный гайд по сисярпу, охуенный гайд по аспнету, потрясающий гайд по ксамарину
Ты на сайт заходил хоть?
Аноним 01/10/16 Суб 12:05:11 #272 №848868 
>>848842
ясен пень, что заходил
но если это все охуенные для тебя гайды, то я даж не знаю. для того, чтобы понять что и зачем - да. для того, чтобы сделать что-то мало-мальски серьезное - не смеши. про ксамарин я не итал, посему не имею мнения, однако, подозреваю, там все так же.

> крайне поверхностно
хотя да, с "крайне" я перегнул, признаю

вот что действительно, что я оттуда вынес - так это знания по WPF. и то потому, что другие источники мне ранее было читать лень/неинтересно
Аноним 01/10/16 Суб 12:33:25 #273 №848877 
>>848868
поссал на дауна (тебя)
Аноним 01/10/16 Суб 13:03:07 #274 №848894 
>>848836
>наследованием в лоб в таких случаях ты упрешься в тупик достатощно быстро, что ты и сделал уже

А как не в лоб?
Аноним 01/10/16 Суб 15:25:04 #275 №848945 
>>848877
встречайте супирсиньора-порватку. хелловорлд скомпилил уже?

>>848894
композицией + диспетчером объектов, либо хардкодить и привязывать поведение своих классов до не могу
Аноним 01/10/16 Суб 16:55:00 #276 №848968 
Насколько важен в работе CIL? И нужен ли он вообще?
Аноним 01/10/16 Суб 19:19:07 #277 №849009 
14753387475160.png
Охуевшие модеры прикрутили хуй пойми какие слова с спам-лист, который неизвестно где задекларирован, поэтому пикрилейтед.
Аноним 01/10/16 Суб 19:23:02 #278 №849010 
>>849009
вот я смотрю в чей-то код, а там var askjfhskdjghksjhdv = 5. ну, канеш, это что-то значит в расшифровке (либо кошка по клавиатуре прошлась), но совсем не очевидно.
у некоторых пул-реквесты закрывались из-за того, что переменная названа неочевидно/не в соответствии с выполняемым действием. такшо нехуй лениться, если это не пет-проджект
Аноним 01/10/16 Суб 19:40:03 #279 №849019 
>>849010

ленится не нужно, только каждую_переменную тоже не стоит так называть, кроме того есть еще худо-бедно общепринятые сокращения, типа i18n
Аноним 01/10/16 Суб 20:12:38 #280 №849035 
14753419583570.jpg
Анон, я к тебе с вопросом про ООП.
Если класс знает про своего наследника, то это нормально или нет?
Я хуево объясняю, но это что-то вроде: у нас есть классы A и B:A и в A есть свойство типа B.
Аноним 01/10/16 Суб 20:16:37 #281 №849036 
>>849010
а если над акронимом был бы комментарий поясгняющий?
Аноним 01/10/16 Суб 20:37:37 #282 №849045 
>>849035
Скорее всего, ты не до конца знаешь, какие возможности предоставляет наследование и полиморфизм. Сформулируй задачу конкретно.
Аноним 01/10/16 Суб 20:55:27 #283 №849049 
14753445274570.jpg
>>849045
https://github.com/ppy/osu-framework/blob/master/osu.Framework/Graphics/Drawable.cs

Вот тут в классе есть:
Свойство "public Container Parent { get; set; }"
Метод "internal void ChangeParent(Container parent)"

Container это класс производный от Drawable. Это же плохо и так нельзя делать?
Аноним 01/10/16 Суб 21:38:39 #284 №849064 
>>849049
крякнул А, ну это GUI похоже. В гуи да, такое применяется и часто, типа чтоб при закрытии основного контейнера закрывались дочерние и типа того.
Аноним 01/10/16 Суб 21:43:00 #285 №849067 
>>849036
камент написать не впадлу, а назвать переменную изначально развернуто - впадлу
Аноним 01/10/16 Суб 21:54:24 #286 №849069 
>>849036

ты же понимаешь, что это неудобно. Нужно или умную иде держать чтобы комментарии в рантайме показывала, или переходить по имени переменной к её декларации. А что если переменных будет не 1 штука, а сотня, раскиданная по десятку неймспейсов?
Аноним 01/10/16 Суб 21:58:48 #287 №849073 
>>849009
>IsCheckBoxInitializingSyncronizationActive
isInitSync
Аноним 02/10/16 Вск 13:21:03 #288 №849308 
14754036639280.png
14754036639281.png
Чурбаны, а поясните вот ещё что. Допустим, есть коллекция, из которой нужно считывать объекты и делать с ними какие то действия. При этом есть булевый флаг, в зависимости от которого нужно либо прошерстить всю коллекцию, либо остановиться после первой успешной проверки определённого условия внутри цикла. И вот тут вопрос, если в коллекции ОЧЕ много объектов, целесообразно ли сделать иф-элс блок с двумя циклами, что ведёт к раздуванию и избыточности кода, или похуй, что стомилльёнов раз будет проходить проверка флага в единственном цикле?
пикрелейтед - иллюстрации того, что я пытался сформировать словами.
Аноним 02/10/16 Вск 13:31:17 #289 №849309 
>>849308
второй пик адекватен хотя бы потому, что отсутствует почти тотальное дублирование кода
а вопроса я так и не понял :(
Аноним 02/10/16 Вск 13:39:20 #290 №849312 
>>849309
Ну типа в первом варианте (v) не будет лишней проверки в каждой итерации, потому что поведение определено ещё до входа в цикл. А во втором случае есть дополнительная проверка в каждой итерации для определения поведения блока цикла. Мне показалось, что при большом количестве итераций лишняя проверка может повлиять на производительность. Или проверить байт это как два пальца обоссать даже на 101010
Аноним 02/10/16 Вск 13:53:27 #291 №849314 
>>849312
итераций?, забыл дописать, да.
Аноним 02/10/16 Вск 15:07:12 #292 №849350 
>>849314
тогда тебе все варианты не подходят. лучше (эффективней) вынести if (E.HasFlag) за пределы foreach. т.к. я перенабираю твой кiд со скрина, я подзаебался пытаться исправлять, посему сам

Аноним 02/10/16 Вск 15:32:46 #293 №849362 
>>849350
Но как он вынесет этот if за пределы foreach, если ему надо проверить всю коллекцию Items этим if? Или не надо?
Аноним 02/10/16 Вск 16:21:35 #294 №849400 
>>849362
с помощью TakeWhile и FirstOrDefault
Аноним 02/10/16 Вск 16:31:38 #295 №849402 
Котаны, пишу робота, который авторизуется и парсит сайты. Как получить итоговый код хтмл, который находится в теге iframe. Как я понял, он заполняется результатом выполнения описанных в нем скриптов. Использую хромиум, в его окне страница в итоговом виде отображается, фидлер показывает что скрипты отработали, но когда я смотрю хтмл код с формы, там результатов работы скриптов нет, а только ссылки на сами скрипты.
Аноним 02/10/16 Вск 16:42:38 #296 №849408 
>>849400
И как ты себе это представляешь вообще?
Аноним 02/10/16 Вск 16:52:19 #297 №849414 
>>849408
да легко
Аноним 02/10/16 Вск 16:53:25 #298 №849416 
>>849414
Если вынести if (E.HasFlag) за foreach, то foreach уже и не нужен будет. Я вот никак не могу уловить ход твоих мыслей.
Аноним 02/10/16 Вск 17:03:18 #299 №849419 
Кто нибудь в WPF делал кастомные контролы для MenuItem? ну типа делаю кастомный класс и наследую его от menuitem Почему они не показываются в приложении при запуске, чего мне не хватает ?
Аноним 02/10/16 Вск 17:10:04 #300 №849422 
>>849419
А всё, нашёл решение.
Аноним 02/10/16 Вск 17:14:52 #301 №849425 
>>849416
ну, сам блок foreach там будет использоваться неявно. можно прибегнуть и к его помощи непосредственно, но это будет аналогичное громоздкое решение

вообще мыслью было вынесение if-а за блок, где производится операция с коллекцией. то, на что этот блок уже будет изменен - дело десятое
Аноним 02/10/16 Вск 17:16:53 #302 №849427 
14754178137020.jpg
>>849308
Объясните мне зачем ему enum айтемов если их можно в обычную коллекцию типа листа запихнуть? Я слишком нуб и чего то не понимаю?
Аноним 02/10/16 Вск 17:21:17 #303 №849429 
>>849425
А в чем профит заменять обычный foreach на TakeWhile?
Аноним 02/10/16 Вск 17:26:40 #304 №849431 
>>849429
шобы потом сделать LiB.LP.SelectedItems.AddRange
опять таки, на любителя (хотя в случае с List-ом было бы эффективней)
Аноним 02/10/16 Вск 17:40:57 #305 №849438 
>>849427
у него коллекция enum-ов
Аноним 02/10/16 Вск 17:41:48 #306 №849439 
14754193082640.jpg
>>849438
Аноним 02/10/16 Вск 17:54:51 #307 №849451 
>>849308
Я нихуя не понял. Такой вариант устроит?
https://dotnetfiddle.net/g2B5L6
Аноним 02/10/16 Вск 18:02:59 #308 №849463 
14754205791120.jpg
>>849451
Аноним 02/10/16 Вск 18:10:19 #309 №849469 
>>849451
Если нужна разная обработка, в зависимости от того, берём один или много элементов, можно так сделать.

https://dotnetfiddle.net/etu5Gg
Аноним 02/10/16 Вск 18:20:32 #310 №849482 
>>849427
Если в кратце, пикрелейтед с моего первого вопроса - часть контрола в WPF, в который загружаются перечисления об определённом объекте. (Типа перечисления районов/этажей/деталей объекта, которые поддаются перечислению и их количество ограничено) Благодаря этому в БД хранится лишь интовое число, а при загрузке данных в клиентское приложение интовое число преобразуется в флаговый энум, который парсится, и в контроле (листбокс в popup'е, элементы которого либо радиобаттон либо чекбокс, в зависимости от флага UseAsFlaggedEnum, который определяется в зависимости от заказываемой таблицы), во первых, в список предметов добавляются все элементы перечисления, и во вторых, отмечаются соответствующие столбцу,строке в БД.
>>849451
>>849469
Да мне не нужна была конкретная реализация. Я остановился на (S) варианте, но мне просто чё то стало интересно, допустимо ли с этической точки зрения плодить код ради мельчайшего улучшения производительности, который в моём случае и заметен не будет, ибо один хуй энумы интовые и больше 63 (127?) сёравно хуй засунешь.
Аноним 02/10/16 Вск 18:21:35 #311 №849484 
14754216957250.jpg
>>849469
Аноним 02/10/16 Вск 18:43:51 #312 №849501 
14754230314740.png
>>849482
>Благодаря этому в БД хранится лишь интовое число
Щито? Захуй тебе тогда бд вообще, если по сути вся инфа хранится у клиента? Что за хуйню я только что прочитал?
Аноним 02/10/16 Вск 18:48:50 #313 №849509 
Анон помоги. Что обычно требуется знать .net джуну? Важно ли знать дохуя паттернов, или достаточно ООП, алгоритмов и языка? Читаю Троелсена, все достаточно легко и понятно, что еще можно почитать?
Аноним 02/10/16 Вск 18:50:41 #314 №849515 
>>849501
У клиента просто инструкции по отображению инфы. int вместо varchar(100500) на сервере, чтобы меньше байт передавалось с сервера клиенту и обратно.
Аноним 02/10/16 Вск 18:54:07 #315 №849516 
>>849515
Ты так хуево все объяснил, что я сначала подумал что все расчеты проводятся на стороне клиента, а на сервере одни инты в бд хранятся за каким то хуем.
Аноним 02/10/16 Вск 18:55:41 #316 №849519 
>>849509
Уметь писать нормальный код под имеющуюся задачу без решарпера. Всё.

>Читаю Троелсена
Да хоть Троллсена. Один хрен не поможет. Учись на реальных задачах, книги не нужны.
Аноним 02/10/16 Вск 18:56:43 #317 №849523 
>>849519
Но это требования к мидлу же.
Аноним 02/10/16 Вск 19:00:00 #318 №849525 
>>849519
Читаю чтобы систематизировать знания и различать String и string, ага. Практикой давно занимаюсь: ищу/ставлю себе задачу и делаю
Аноним 02/10/16 Вск 19:11:39 #319 №849527 
>>849523
>это требования к мидлу
Проиграл. В голос.

>>849525
>и различать String и string, ага
Для всего этого есть MSDN + StyleCop + встроенные средства VS 2015, а не книги, хуй пойми когда написанные.
Аноним 02/10/16 Вск 19:18:27 #320 №849530 
>>849527
Джун который может самостоятельно что то писать под имеющуюся задачу и которому не нужен наставник это уже не джун вовсе. Что за хуйню ты городишь?
Аноним 02/10/16 Вск 19:20:29 #321 №849531 
>>849530
А кто такой джун тогда? Мартыхан, клепающий классы по шаблонам?
Аноним 02/10/16 Вск 19:24:03 #322 №849535 
>>849531
Именно он и есть. Пиздец я бы таких как ты палками пиздил - уеба с опытом и умением работы прибедняется и идет на джуна, хотя знаний и опыта на мидла, а настоящим джунам, которым этот опыт работы в настоящей компании очень нужен, остается только хуй сосать.
Аноним 02/10/16 Вск 19:26:31 #323 №849536 
>>849535
>Именно он и есть
Ну ок, я думал ты пошутил так.

>Пиздец я бы таких как ты палками пиздил
Не стоит, я у джунов хлеб не забираю и не занимаю их должности.
Аноним 02/10/16 Вск 19:31:15 #324 №849539 
>>849536
Короче, самое главное что требуется от джуна - обучаемость. К джуну приставляется мидл в качестве наставника и тот его обучает и дает задания.
Аноним 02/10/16 Вск 19:36:20 #325 №849545 
>>849539
>обучаемость
Важнейшее качество, соглашусь.

Короче, >>849509, если ты обучаемый - работу в любом случае найдёшь. Могут пару раз завалить на собеседованиях по поводу какой-то несусветной хуиты, но рано или поздно найдутся те, кто тебя возьмёт на работу.
Аноним 02/10/16 Вск 20:00:13 #326 №849552 
>>849535
хех, помнится, постучалась ко мне рекрутерша с требованием к джуну - не менее 1.5 года коммерческой разработки. даже не представляю за кого они там держат действительно неопытных товарищей
Аноним 02/10/16 Вск 20:11:03 #327 №849562 
>>849545
Немного успокоили, спасибо.
LINQ Аноним 02/10/16 Вск 20:19:45 #328 №849567 
Быстро решительно, у тебя есть 5 секунд, как вернуть несколько объектов из списка с максимальными значениями одного из полей сего объекта. За один проход можно же, няши?
Аноним 02/10/16 Вск 20:22:46 #329 №849571 
>>849567
Linq
Аноним 02/10/16 Вск 20:24:05 #330 №849573 
>>849571
НУ а метод какой?
Аноним 02/10/16 Вск 20:24:08 #331 №849574 
>>849567
orderby считается одним проходом?
Аноним 02/10/16 Вск 20:26:34 #332 №849576 
>>849573
Where/Select + Max, скотина ты ленивая.
Аноним 02/10/16 Вск 20:31:29 #333 №849581 
>>849576
чот я не понял, как с помощью Where и Max ты выберешь инстансы с максимальными значениями чего-либо?
Select я в каком-то упоротом варианте, возможно, смогу представить
Аноним 02/10/16 Вск 20:32:21 #334 №849582 
>>849576
Как же я тебя люблю, что за вэрэ и селект? Ладно пойду гуглиться.

>orderby считается одним проходом?
Не знаю, браток, мне казалось есть простое решение, нажать кнопку и всё готово, а нихуя
Аноним 02/10/16 Вск 20:33:08 #335 №849584 
>>849581
Анонимные типы, Люк. Используй их и всё получится.
Аноним 02/10/16 Вск 20:37:45 #336 №849591 
>>849584
https://dotnetfiddle.net/PDGHkq
что я должен указать, дабы все получилось по свойству A?

>>849582
OrderByDescending(item => item.Prop).Take(count);
так непросто?
Аноним 02/10/16 Вск 20:40:15 #337 №849594 
>>849591
Что должно в итоге получится, ты можешь нормально описать?
Аноним 02/10/16 Вск 20:42:46 #338 №849595 
>>849594
> вернуть несколько объектов из списка с максимальными значениями одного из полей сего объекта
речь до сих пор идет только об этом
Аноним 02/10/16 Вск 20:45:25 #339 №849599 
>>849595
Блядь, OrderBy это не то же самое, что выбирать по максимальному значению свойства.
Если я тебя правильно понял, замени строку 9 в своём фиддле на
foreach (var item in GetAzaza().OrderByDescending(i => i.A))
А иначе точнее объясняй задачу.
Аноним 02/10/16 Вск 20:46:12 #340 №849600 
>>849567
https://dotnetfiddle.net/GdGcKA
Аноним 02/10/16 Вск 20:47:28 #341 №849602 
>>849599
да еб же твою мать. человек спрашивает:
> как вернуть несколько объектов из списка с максимальными значениями одного из полей сего объекта
ты (или не ты, мне похуй) отвечаешь:
> Where/Select + Max
я, в недоумении, как же ты собрался оперировать сими методами в данной задаче. ты же, блять, сводишь все к Order
Аноним 02/10/16 Вск 20:49:42 #342 №849603 
>>849600
а если последний элемент в списке, как выяснится, будет самым весомым, ты вернешь List<> с одним этим элементом? я чет не догоню
Аноним 02/10/16 Вск 20:51:52 #343 №849605 
>>849602
Ты идиот или прикидываешься? Селектишь итемы (и свойства в массивы если нужно), дальше смотришь что там по Max в массивах получается, возвращаешь искомое значение.
Нахуй ты тогда здесь OrderBy в фиддле приплёл? Выражайся яснее.
Аноним 02/10/16 Вск 20:53:44 #344 №849608 
>>849603
На 49 строке мы обнуляем возвращаемый массив - это произойдёт в том случае, если текущий элемент весомее тех, что хранятся в массиве.

> ты вернешь List<> с одним этим элементом?
Да.
Аноним 02/10/16 Вск 20:54:59 #345 №849611 
>>849605
прикидываюсь
что мне нужно в фиддле своем нопесать в foreach для того, чтобы выполнить сее действие?

>>849608
ну а в чем фишка если мне, допустим, надо два объекта?
Аноним 02/10/16 Вск 20:56:47 #346 №849614 
>>849611
Сортируешь по величине и вытаскиваешь первые два.
Аноним 02/10/16 Вск 20:57:10 #347 №849615 
>>849611
>ну а в чем фишка если мне, допустим, надо два объекта?

Он вернёт два объекта, если они равны по заданному полю и это поле максимальное для твоего массива.
Аноним 02/10/16 Вск 20:59:37 #348 №849619 
>>849611
>прикидываюсь
Тогда сформируй задачу так, чтобы людям понятно было.
Аноним 02/10/16 Вск 21:02:55 #349 №849620 
>>849619
человек описал ее выше
я привел для наглядности фиддл с указанием готовых объектов
как мне, используя Where/Select/Max в моем фиддле отобрать несколько инстансов с максимальными значениями свойства А?
Аноним 02/10/16 Вск 21:04:41 #350 №849623 
>>849620
var sortedList = listOfSomeClasses.OrderBy(r => r.SomeValue).Reverse();
И вытягиваешь столько максимальных значений, сколько тебе нужно.
Аноним 02/10/16 Вск 21:07:02 #351 №849627 
>>849600
Поясните, плиз, чем мой вариант не устраивает. Или я неправильно понял, что ему нужно?
Аноним 02/10/16 Вск 21:08:56 #352 №849630 
>>849627
Просто ты изобрел велосипед.
Аноним 02/10/16 Вск 21:11:51 #353 №849632 
>>849623
> используя Where/Select/Max
Аноним 02/10/16 Вск 21:13:05 #354 №849634 
>>849632
Зачем?
Аноним 02/10/16 Вск 21:14:13 #355 №849636 
>>849630
Но ведь подобного метода нету ни в стандартной поставке, ни в популярных либах.

Тем более, если требованием является сделать это за один заход, то цепочка из операторов из Where/Select/Max здесь явно не подойдёт.
Аноним 02/10/16 Вск 21:17:44 #356 №849637 
>>849634
ты это указал как решение задачи, которого (решения) я не понял. во что я сейчас и пытаюсь въехать
Аноним 02/10/16 Вск 21:19:29 #357 №849639 
>>849637
>ты это указал
Чо блять? Я вообще мимо проходил.
Аноним 02/10/16 Вск 21:21:03 #358 №849641 
>>849639
охебанаврот
Аноним 02/10/16 Вск 21:27:14 #359 №849643 
>>849636
Думаю под одним заходом он имел ввиду то, что нужно все записать одной строчкой, а не писать простыню с новыми методами, классами и прочим.
Аноним 02/10/16 Вск 21:33:22 #360 №849649 
>>849643
Тогда вот так.
https://dotnetfiddle.net/y95bpa
Аноним 02/10/16 Вск 21:36:47 #361 №849651 
>>849649
Странно рандом на фиддл работает, у меня всегда выдает 29.
Аноним 02/10/16 Вск 21:41:20 #362 №849654 
>>849651
Генерируется 100 объектов. У каждого объекта поле Prop в диапазоне от 0 до 29. Потом берутся объекты с максимальным полем и выводятся.

Если уменьшить число объектов или поменять верхнюю границу значения поля Prop, то тогда результат будет меняться.
Аноним 02/10/16 Вск 21:49:15 #363 №849658 
>>849654
Короче, если не понятно. Вот без всей хуйни с рандомом.
https://dotnetfiddle.net/TQlJSc
Аноним 02/10/16 Вск 21:52:44 #364 №849661 
>>849658
Да я то понял, но как уже тут писали, можно сделать проще.
https://dotnetfiddle.net/7JjYkl
Аноним 02/10/16 Вск 21:55:54 #365 №849665 
>>849661
Откуда 5 в Take берётся? Разве ему нужно не все объекты, у которых заданное поле максимальное?
Аноним 02/10/16 Вск 22:00:36 #366 №849668 
>>849665
> Разве ему нужно не все объекты, у которых заданное поле максимальное?
> Как вернуть несколько объектов из списка с максимальными значениями одного из полей сего объекта

Я слепой мудак, прошу прощения. Несколько - это сколько? Все, или какое-то константное значение?
Аноним 02/10/16 Вск 22:02:38 #367 №849670 
>>849665
>>849668
Сколько захочет - столько и возьмет. Если не любит магические числа, то пропишет константу, а мне лень было.
Аноним 02/10/16 Вск 22:57:33 #368 №849707 
есть 2 массива, например: [1, 1, 3] и [1, 3, 4, 1]
надо как-то проверить, чтобы все элементы одного были в другом. т.е. если в одном две единицы, то и в другом должно тоже быть 2 единицы.
Как это сделать?
Аноним 02/10/16 Вск 23:00:29 #369 №849711 
>>849707
хранить объекты "соответствий" элементов массивов и при нахождении пары проверять, дабы этот индекс не был использован ранее. хотя так се решение, имхо
Аноним 02/10/16 Вск 23:08:33 #370 №849720 
>>849707
https://dotnetfiddle.net/gdHVtd
Аноним 02/10/16 Вск 23:14:21 #371 №849724 
Раз тут такая мутка, то скажите и мне, как найти допустим три ближайших объекта, и как оно работает, массив сортируется, после чего просто загребются первых три элемента?
Аноним 03/10/16 Пнд 00:09:54 #372 №849740 
14754425941110.png
Помогите разобраться с WPF. Я нашёл, как сделать привязку с INotifyPropertyChanged в коде, но как сделать это же в разметке xaml? Это вообще возможно?
Аноним 03/10/16 Пнд 01:14:06 #373 №849764 
>>849740
https://ru.stackoverflow.com/questions/269615/wpf-привязка-данных-из-объекта
Аноним 03/10/16 Пнд 02:35:09 #374 №849776 
>>849482
щито тебе не нравится?
Аноним 03/10/16 Пнд 03:07:58 #375 №849783 
>>849600
поясните-ка этот момент
where TR : IComparable<TR>
Аноним 03/10/16 Пнд 03:32:03 #376 №849785 
>>849783
Данный кусок кода ставит ограничение для обобщённого элемента. В данном случае мы говорим, что тип TR должен реализовывать интерфейс IComparable<TR>

Интерфейс IComparable предоставляет метод CompareTo для сравнения двух элементов (дата, число и т.п.). Если не указывать это ограничение, то в обобщённом методе нельзя будет вызвать метод CompareTo, т.к. не у любого объекта он доступен, а только у реализующих указанный интерфейс.

http://professorweb.ru/my/csharp/charp_theory/level11/11_3.php
Аноним 03/10/16 Пнд 07:01:37 #377 №849797 
>>849764
Спасибо, а там ещё написано, что датаконтекст можно поставить в разметке, как это сделать?
Аноним 03/10/16 Пнд 07:37:32 #378 №849804 
>>849797
<Window.Resources>
<local:aViewModel x:key=aVM>
</Window.Resources>
<Grid DataContext="{Static Resource aVM}">
</Grid>
если view model с параметром в конструкторе, то придется прибегнуть к ObjectDataProvider
Также размещаешь в ресурсах, указываешь тип объекта, параметры конструктора и чё то там ещё, и также в DataContext грида пихаешь
Аноним 03/10/16 Пнд 08:11:26 #379 №849811 
Каким образом можно сгенерировать файл с классом на основе информации полученной с ресурса?
Например я заполнил List данными и теперь мне нужно с его данными создать файл с классом по шаблону.
Аноним 03/10/16 Пнд 08:22:29 #380 №849815 
>>849811
Попробуй еще раз, а лучше нарисуй.
Аноним 03/10/16 Пнд 08:42:54 #381 №849826 
>>849815
Что тут непонятного. На стороннем ресурсе есть список, который нужен мне в виде физического класса в одном проекте.
Т.е я не хочу парсить это в рантайме, мне проще иметь его в виде статического класса с List или Dictionary. Можно ли как-то его сгенерировать из шаблона в ооп стиле, не хочется билдить это строками, без форматирования. Или может билдить строками и пропустить через утилиту форматирования, но мб есть другой путь.
Аноним 03/10/16 Пнд 09:16:16 #382 №849836 
>>849826
проблема в количестве данных или ты решил, что такой способ будет забавней?
Аноним 03/10/16 Пнд 09:34:57 #383 №849844 
>>849836
Да, данных много, наверно даже заюзаю lazy.
Ну в общем сделал через StringBuilder, вышло кучеряво.
Аноним 03/10/16 Пнд 09:36:10 #384 №849845 
>>849826
Тебе просто данные захардкодить? T4 шаблоны. Можешь просто файл с данными рядом с собой положить и не выебываться
Аноним 03/10/16 Пнд 09:40:26 #385 №849846 
>>849845
[code=csharp]test();[/code]
Аноним 03/10/16 Пнд 09:44:22 #386 №849847 
>>849846
>Unexpected token
Аноним 03/10/16 Пнд 09:53:59 #387 №849849 
>>849845
Тут просто данные периодически обновляются, не часто, но все же. И они на стороннем ресурсе.
Аноним 03/10/16 Пнд 10:57:55 #388 №849871 
>>849849
Так тем более положи в файл, потом прост заменять его будешь, вместо перекомпиляции.
Аноним 03/10/16 Пнд 11:20:00 #389 №849876 
>>849871
Так жеж это лишняя работа.
Аноним 03/10/16 Пнд 12:13:09 #390 №849895 
14754859900210.jpg
Интересно, а можно ли на основе метаданных полностью переписать чужую сборку в код?
Аноним 03/10/16 Пнд 13:01:58 #391 №849924 
>>849895
Если ты про декомпиляцию сборки то ilspy с плагином может декомпилировать, так и просто поправить сборку.
Аноним 03/10/16 Пнд 13:46:30 #392 №849952 
>>849519
> без решарпера
схуяли?
Аноним 03/10/16 Пнд 15:25:50 #393 №850007 
>>848527
Инструменты разработчика есть в любом браузере, даже ничего устанавливать не нужно
Аноним 03/10/16 Пнд 16:01:32 #394 №850020 
>>849895
дык на лету можно даже инжектировать инструкции/данные
Аноним 04/10/16 Втр 07:18:35 #395 №850300 
Не тонем.
Аноны, есть такая проблема: есть файл на сетевой шаре, файл постоянно дописывается, мне надо новые строки из него читать. Вроде бы хуйня, но не получается. Открываю через FileStream, выставляю FileShare.ReadWrite, но таки третья программа в этот момент не может открыть файл на чтение, а выдает только "permission denied". Как-то победить можно?
Аноним 04/10/16 Втр 08:30:24 #396 №850308 
>>850300
Если тебе только читать то зачем тебе write?
Аноним 04/10/16 Втр 08:48:43 #397 №850318 
>>850308
Эта константа определяет, как файл шарится же. https://msdn.microsoft.com/ru-ru/library/system.io.fileshare(v=vs.110).aspx
А файл я конечно в режиме чтения открываю.
Аноним 04/10/16 Втр 08:51:36 #398 №850319 
У кого-нибудь t4 шаблоны добавляются в проект net core?
Аноним 04/10/16 Втр 09:26:56 #399 №850331 
Учу шарп. Посмотрел ASP.NET MVC и NancyFX, нэнси нравится больше. Насколько хорошей идеей будет учить вначале нэнси, а потом асп эмвиси?
Аноним 04/10/16 Втр 09:28:37 #400 №850332 
Какие смежные знания требуются шарперу? Вот например жавист или питонист должен знать основы линукса и MySQL/PostgreSQL, жаваскриптер должен знать сборщики типа gulp и webpack, основы ноды. А что дополнительно нужно шарперу?
Аноним 04/10/16 Втр 09:34:22 #401 №850334 
>>850332
редко что-то требуют
шейрпоинт, жс. например
Аноним 04/10/16 Втр 09:40:24 #402 №850336 
>>850334
сикуль
Аноним 04/10/16 Втр 09:49:40 #403 №850338 
>>850331
А что там учить в ненси это довольно таки простой микрофреймворк, на котором можно быстро что-нибудь запилить.
Смотря какие у тебя цели, на работе тебе будет нужен 4ый и возможно если новый проект то core.
Для себя я уже решил что буду писать на core и старые проекты на ненси тоже переведу на новый асп. Он тоже довольно-таки прост в освоении.
Аноним 04/10/16 Втр 10:24:10 #404 №850344 
>>850300
Аноны, ну есть какое-то решение? Открываю по всем инструкциям, не блокируя файл, и всё равно другая программа открыть его не может.
using (FileStream fileStream = new FileStream(plFilename, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
Аноним 04/10/16 Втр 10:57:22 #405 №850352 
>>850344
ПК, на котором выполняется третья программа, имеет доступ к чтению файла? Имею ввиду, ОС позволяет?
Аноним 04/10/16 Втр 11:00:35 #406 №850353 
>>850352
Да, имеет. Если мою программу закрыть, то доступ на третьем ПК начинает работать
Аноним 04/10/16 Втр 13:40:47 #407 №850394 
Посоветуйте книжку по ООП с нормальными примерами на шарпе.
Пытался навернуть "Объектно-ориентированные мышление" от Вайсфельда - будто говна поел, еще и большинство примеров на ломаной джаве.
Аноним 04/10/16 Втр 14:36:09 #408 №850427 
>>850394
Троелсен
Аноним 04/10/16 Втр 14:40:23 #409 №850432 
Создал проект на Нэнси. Кроме основного файла программы добавил отдельный файл с роутером и рандомным названием файла и класса, но стандартным неймспейсом. И он... работает! Как? Откуда программа узнала об этом классе? Она что, автоматически парсит все .cs файлы? Их не нужно подключить вручную? Где можно прочитать про принцип работы этого?
Аноним 04/10/16 Втр 15:37:04 #410 №850481 
>>850427
Всего 90 страниц про основы ООП, очень кратко.
Аноним 04/10/16 Втр 17:06:52 #411 №850534 
>>850481
да это с опыт приходит, анон.

так, если хочешь, то паттерны проектирования хорошо мозги вправляют еще.
Аноним 04/10/16 Втр 20:30:07 #412 №850671 
Что скажете об "C# 4.0 и платформа .NET 4 для профессионалов." Кристиан Нейгел, Билл Ивьен, Джей Глинн, Карли Уотсон? Насколько годная, какой порог вхождение?
Аноним 04/10/16 Втр 20:41:48 #413 №850683 
>>850671
вах зачем сышарб чотыриноль?
Аноним 04/10/16 Втр 21:44:47 #414 №850709 
>>850432
> Создал проект на Нэнси. Кроме основного файла программы добавил отдельный файл с роутером и рандомным названием файла и класса, но стандартным неймспейсом. И он... работает! Как? Откуда программа узнала об этом классе? Она что, автоматически парсит все .cs файлы? Их не нужно подключить вручную? Где можно прочитать про принцип работы этого?
Там небось класс или метод атрибутами декорируются?
Аноним 04/10/16 Втр 21:45:22 #415 №850710 
>>850683
Аноним 04/10/16 Втр 21:45:39 #416 №850711 
>>850683
а разница-то?
Аноним 04/10/16 Втр 21:46:59 #417 №850713 
>>850671
Зачем вообще начиеающим читать что-то кроме Трэлсона? Вы же не про цене выбираете, все равно все бесплатно.
Аноним 04/10/16 Втр 21:49:33 #418 №850714 
>>850711
Разница в async await (важно), строчной интерполяции, дефолтных значения свойств и прочего с# 6 сахара(не очень важно)
Аноним 04/10/16 Втр 21:51:35 #419 №850719 
>>850711
начиная с c# 5.0 завезли async и await, (в 6,0 ещё и их поддержку в catch-finally блоках), что хоть и является лишь синтаксическим сахаром, но поможет разгрузить код от ебанутых конструкций типа
Task<int> A = new Task(...);
Task B = A.ContinueWith(()=>{a = A.Rezult();})... ну и прочий приятный синтаксический сахар, который может сделать код более наглядным. Оператор nameof() может пригодится в WPF при использовании биндингов.
Аноним 04/10/16 Втр 21:58:11 #420 №850724 
>>850709
Наследуется от NancyModule.
Аноним 04/10/16 Втр 22:24:57 #421 №850753 
>>850724
Вот тебе и ответ
Аноним 04/10/16 Втр 23:36:40 #422 №850802 
14756134005010.png
Анон, ты знаешь какой-нибудь быстрый способ вкатиться в OpenGL+OpenTK? Судя по гуглу, OpenGL Superbible мой друг, но 880 страниц это дохуя. Если что, мне глубокое понимание и 3D не нужно. Но хочу хотя бы иметь представление о всяких там vertex, batch, transform, shader ну или что там еще можно в 2D игрушке встретить.
Аноним 05/10/16 Срд 07:20:28 #423 №850888 
>>849804
А я ещё вот такой вариант методом тыка нашёл. Если в MainWindow есть ссылка на объект, из которого надо брать данные (напр., myObject со свойством myProperty), то можно написать DataContext="this.myObject", и потом в контроле (напр., текстбоксе) вот так: Text="{Binding Path=MyProperty, UpdateSourceTrigger=PropertyChanged}".

А со статик ресурсом будет лучше (если да, то чем), или без разницы?
Аноним 05/10/16 Срд 07:40:34 #424 №850893 
>>850888
с точки зрения производительности - без разницы. возможно, даже лучше все контролы и вообще ебаное всё делать в коде, ибо код КЗАМЛа конвертируется в БАМЛ (бинарное представление), а потом вроде прям при запуске парсится и генерируются контролы. но с другой стороны, похоже разница в скорости милипиздронческая будет, так что рекомендуется весь UI код писать в кзамле, просто потому что это визуально разделяет бизнес логику и представление (паттерн MVVM все дела ебала). Типа, если не впихивать всё в кзамл, то у тебя помимо this.DataContext = myObject; ещё потом строчка появится, которую можно было в кзамле прописать, потом ещё и ещё и в итоге у тебя 1/4 c# кода может быть вынесена в кзамле, а вместо этого ты прокручиваешь его каждый раз, когда тебе нужно изменить/вспомнить как работает бизнес логика.
Аноним 05/10/16 Срд 08:12:33 #425 №850894 
>>850714
>>850719
я знаю про разницу 4.0 и всех остальных версий. глобально разница-то в чем? TPL есть и в четвертом, nameof заменяется атрибутом типа CallerNameAttribute, если правильно помню. остальной сахар всего-лишь сахар. канеш писать на новой версии всегда приятней, не спорю. но в обучении-то какой принципиальный момент есть?
Аноним 05/10/16 Срд 08:27:06 #426 №850897 
Здравы буде, бояре.

Направляемый наставлениями премудрых волхвов создал клинопись рабочую с использованием mssql да на windows forms. И всё бы ничего, но решимостью одержимый оптимизировать код натолкнулся на темную область в своем разуме.

На одной из скрижалей надобно мне одну и ту же надпись в несколько label'ов залить, поступил по-древлянски сначала, присвоив каждому эту надпись вручную, но должно же это как-то и слаще делаться? Или ошибаюсь я?
Аноним 05/10/16 Срд 08:32:21 #427 №850898 
>>850897
можешь присвоить лейбмлам тег уникальный, и потом делаешь что нибудь типа
foreach(Control C in this.Controls)
if (C is Label && C.Tag=="uniqueTag")
((Label)C).Text="newtext";
Аноним 05/10/16 Срд 08:36:49 #428 №850899 
>>850898
>тег уникальный

Спасибо, я все вокруг этого свойства крутился.
Аноним 05/10/16 Срд 09:59:08 #429 №850913 
>>850898
Хм. Ниработаит. Почему-то проверяет кнопки, лол. Напрямую
label1.Text = label2.Tag.
втыкается, а вот почему он на кнопках цикл гонит.
Пробовал в условии ставить Label C in Controls, сразу же исключение вываливается - "невозможно батон к лэйблу привести". Смешно чота
Аноним 05/10/16 Срд 10:04:08 #430 №850914 
>>850913
и лейбл и баттон наследуются от контрола. видимо, в логику foreach не вложена проверка допустимости приведения типа, поэтому приходится действовать, как я изложил в >>850898
foreach(Control C in this.Controls)
if (C is Label && C.Tag=="uniqueTag")
((Label)C).Text="newtext";
Аноним 05/10/16 Срд 10:18:59 #431 №850921 
>>850914
Прости, но я именно так и делал сначала, потом уже стал экспериментировать.
Тут видимо надо получать коллекцию только лэйблов для начала, а потом уже по нему гонять с проверкой.
Аноним 05/10/16 Срд 10:44:41 #432 №850933 
Ебать, я поехавший. Мне ж как покрасивее надо, а не учел, что groupBox - контейнер. Надо было не с зыс контролс брать для перебора, а с групбокса именно.

Спасибо еще раз
Аноним 05/10/16 Срд 11:15:02 #433 №850936 
>>850714
async await же еще с 4.5 добавили, не?
Аноним 05/10/16 Срд 11:16:09 #434 №850937 
>>850936
C#5 4.5framework*
Аноним 05/10/16 Срд 11:56:53 #435 №850958 
>>850300
>>850344
В итоге так и не получилось у меня это победить. Пришлось городить костыли: мониторю дату изменения файла, и в случае изменения читаю весь файл с последней измененной строки (её тоже запоминаю). Благо, единственная прога, которая пишет в файл, только добавляет новые строки, ничего не удаляя. Но это как-то через жопу, и мне не нравится, если честно.
Аноним 05/10/16 Срд 12:59:33 #436 №850987 
>>850914
> в логику foreach не вложена проверка допустимости приведения типа
Если бы это было так, то это был бы не язык программирования, а сплошной анал-карнавал.
Аноним 05/10/16 Срд 14:00:32 #437 №851030 
>>850802
>в 2D игрушке
бери гамак и лепи. а если любишь шарпы, то юнети и вперед.
иди в /gd/, там найдешь тред юнетей.
еще там один доброанон выложил цикл уроков по юнете для самых маленькихна ютабе ищи level gd. за выходные осилишь.
Аноним 05/10/16 Срд 14:05:14 #438 №851032 
>>850913
Не понял, что тебе не нравится. Оно и будет проверять кнопки. Цикл пройдётся по всем контролам в форме, но вставит текст только лэйблам с указанным тегом.
Аноним 05/10/16 Срд 15:24:56 #439 №851079 
>>851032
Мне всё нравится. Я уже отписался. Кстати, во многом и допёрло, что дело в групбоксе, из-за того, что кнопки всплывали
Аноним 05/10/16 Срд 15:58:32 #440 №851102 
>>851030
Мне нужно разобраться с готовым open source проектом на самодельном фреймворке. Так что юнити мне не нужно от слова совсем.
Аноним 05/10/16 Срд 22:00:36 #441 №851273 
14756940361630.png
Так, шарпаны, напомните, что делать в таких ситуациях (пикрелейтед)
имею ввиду как убрать эту ебучую точность, когда вместо 0 получается 0.0099999999999Е-17?
Аноним 05/10/16 Срд 22:06:53 #442 №851280 
>>851273
decimal
Аноним 05/10/16 Срд 22:14:01 #443 №851286 
>>851280
кастовать всмысле или куда?
Аноним 05/10/16 Срд 22:21:18 #444 №851299 
>>851286
Ну ты левую и правую границы и шаг как получаешь? double.parse? Вот сделай decimal.parse.
Аноним 05/10/16 Срд 22:26:46 #445 №851311 
>>851273
О, спасибо. И вот ещё вопрос. Допустим есть приложение, которое для своих нужд создаёт дочерние процессы. Если основной процесс завершает работу аварийно, как пиздануть все дочерние процессы?
Аноним 05/10/16 Срд 22:40:00 #446 №851324 
>>845034
Не понял, метод можно напрамую подписывать на событие?
Зачем тогда во всех книгах описывают это только с помощью делегатов? Как я вообще до этого должен был дойти?
Аноним 06/10/16 Чтв 01:49:18 #447 №851379 
Доставьте годный гайд/книгу/что угодно про Xamarin.
Аноним 06/10/16 Чтв 02:22:04 #448 №851387 
>>851379
https://channel9.msdn.com/Shows/XamarinShow
Аноним 06/10/16 Чтв 09:12:25 #449 №851420 
14757343456650.jpg
Бесконечный цикл, чзх
byte res = new byte[256];
for(byte i = 0; i <= 255; i++)
{
res = i;
}
Аноним 06/10/16 Чтв 09:15:14 #450 №851421 
>>851420
res=i
Аноним 06/10/16 Чтв 09:21:44 #451 №851423 
>>851420
Сука сраный ондроед, ну, думаю, все поняли
Аноним 06/10/16 Чтв 09:22:15 #452 №851424 
>>851420
в прошлом треде такой же вопрос был вроде. у байта максимальное значение = 255, потом переполнение, в результате (если на 1) которого число становится = 256%256=0, что и происходит в твоём случае. сделай условие <255
Аноним 06/10/16 Чтв 11:11:54 #453 №851447 
есть циклический процесс, который делает дела с удаленными сервисами/серверами -> практически вся работа идет через Connection's и Stream. естессно вся Disposable фигня обернута в using

но после каждого цикла остается ~60-80 мегабайт памяти, занятой System.Byte[]. прошерстя профайлером, убедился, что все их корни идут от тех самых стримов, сериализаторов, коннэкторов и всей прочей шешуры, которых уже и след давно простыл

суть то проблемы, что приложение активно выделяет память под себя, пока не упрется в определенного рода потолок, который на разных энвайрментах разнится от сотен мб до единиц гигабайт, ну и уж начинается "плавание" вокруг этого предела

гуглы ничего адекватнее using/Dispose не говорят. пробовал и обнулять все объекты по выходу из цикла, и вызывать GC.Collect (хотя бы для того, чтобы оценить потенциальный результат). но все, к чему привело - уменьшение скорости выделения памяти под себя. т.е. проблема не ушла, но стала совсем на писечку менее явной. есть один "пример", который, используя винАПИ, принудительно делает deallocate памяти под процесс, но это во-первых так себе, а во-вторых имеет такую проблему, что я не знаю, сколько реально памяти можно сожрать

вообще, есть методы борьбы с подобными процессами? в частности, как определить, почему мусор, являющийся мусором, не умирает. а если мусором не является (в чем я сомневаюсь ибо в конце концов процесс съедания памяти имеет предел), то что его держит в живых?
Аноним 06/10/16 Чтв 17:15:56 #454 №851623 
>>851324
SOOPER BUMB VOPROSU
Аноним 06/10/16 Чтв 17:44:17 #455 №851636 
>>851623
а это не делегат?
this.gridView.SelectionChanged += this.gridView_SelectionChanged
я чота не пойму

>>851447
крч оказалось все очень как страшно. забита память, в основном, объектами типа System.Collections.Concurrent.ConcurrentStack+Node<Object>, поверхностная информация о жизни которых выглядит как-то так:

Domination path for "System.Collections.Concurrent.ConcurrentStack+Node<Object>" from "Survived objects of the value type System.Byte[] "
Holds 60176192 B in 5576 objects

System.PinnableBufferCache ->
System.Collections.Concurrent.ConcurrentStack<Object> ->
System.Collections.Concurrent.ConcurrentStack+Node<Object> ->
System.Collections.Concurrent.ConcurrentStack+Node<Object> глубже не имеет смысла

я чот пока не уверен, что все, что я накопал, я все понял верно, посему не буду постить догадки/преждевременные выводы. а если кто столкнулся/кому интересно, чота напейшу
Аноним 06/10/16 Чтв 18:57:10 #456 №851685 
Шарпач, помоги.
Есть один проект, тестовый. Знаю, что оче налажал, но где - не совсем очевидно, я же нублан. Анон, сделай ревью, потыкай носом, а?
https://github.com/Joysome/Test-Web.APi-AngularJS.git
Особенно интересует, куда надо было бы деть то, что у меня в FSService.
Аноним 07/10/16 Птн 02:09:06 #457 №851982 
FileSystemWatcher'ом слежу за изменением файлов в директории. Хочу когда файл изменится дописать в него небольшой фрагмент, но возникает проблема: когда я записываю в этот файл информацию, на него снова срабатывает watcher и программа уходит в бесконечный цикл. Если перед записью в файл в обработчике события OnChange отключить watcher, а после включить, то он пропускает изменение другого файла, который записывался как раз в этот момент. Как быть?
Аноним 07/10/16 Птн 02:51:06 #458 №851995 
>>851636
>а это не делегат?
Нет конечно, gridView.SelectionChanged - это событие.
Аноним 07/10/16 Птн 08:08:23 #459 №852023 
>>851995
а событие это у нас нынче не делегат?
Аноним 07/10/16 Птн 08:31:01 #460 №852031 
>>851623
тебе что непонятно-то? как события использовать на практике или как оно в машинный код переводится? По-человечески объясни. Я нуб, если что.
Аноним 07/10/16 Птн 10:11:20 #461 №852068 
>>851982
1. Можешь для каждого файла заводить отдельный FSW, и при возникновения события Changed внутри блока обработчика этого события отписываться от метода (sender as FileSystemWatcher.Changed-=methodName;) потом делаешь свои грязные делишки и снова подписываешься всё внутри обработчика
2. (если в событии фильтр можно смотреть путь файла, вызвавшего )Делаешь словарь типа Dictionary FileUpdatedManuallyFlag<string, bool>, заполняешь его названиями файлов в директории с интересуемыми расширениями, и в обработчике Changed каждый раз смотришь, вручную ли был изменён файл (например, из обработчика)
if (!FileUpdatedManuallyFlag(e.Name))
{
//do the thing;
FileUpdatedManuallyFlag(e.Name)=false;
}
else
{
FileUpdatedManuallyFlag(e.Name)=true;
//дописываешь в файл залупу
}
Аноним 07/10/16 Птн 16:05:14 #462 №852255 
>>851685
Начнем с того, что .vs и packages не нужно комитить.
Зачем тебе dynamic? Почему post, если это get?
Аноним 07/10/16 Птн 17:40:40 #463 №852314 
>>852031
>метод можно напрамую подписывать на событие?
>Зачем тогда во всех книгах описывают это только с помощью делегатов?
Аноним 07/10/16 Птн 17:47:50 #464 №852325 
>>852023
В книге написано, что - нет.
Хотя судя по синтаксису и логике работы - вполне. Поэтому я и застопорился, либо я чего-то не догоняю, либо в книгах странно объясняют.
Алсо, как таким образом (подпиской напрямую) передавать ссылку на вызывающий объект?
Аноним 07/10/16 Птн 18:09:17 #465 №852339 
>>852314
>>852325
давайте разберёмся в терминологии для начала, шо такое "подписка напрямую" и чем она отличается от такой же, только в обход?
Аноним 07/10/16 Птн 18:25:19 #466 №852359 
>>852339
Хмм. Надеялся, что вопрос будет понятен. Надо подумать, как сформулировать вопрос правильно.

Есть, например, форма с радиобаттонами.
Есть событие rb1.ChckedChanged, на которое я хочу подписать метод rb1_OnCheckedChanged.
Как это правильно сделать? В частности, надо использовать стандартный делегат EventHandler или нет?
Здесь >>845034
>this.gridView.SelectionChanged += this.gridView_SelectionChanged;
не используется EventHandler, и это я называю "напрямую". Я так понимаю, это можно сделать потому, что SelectionChanged это стандартное событие C#, какое-то кастомное событие надо объявлять через делегат. Я правильно понял?

Аноним 07/10/16 Птн 18:33:49 #467 №852364 
Привет, шарпач.
На работе приходится разбираться в старом коде и увидел в wcf сервисе следующее:

internal class Settings
{
internal static Settings Instance => Nested.instance;

public MainForm MainForm { set; get; }

class Nested
{
static Nested() { }
internal static readonly Settings instance = new Settings();
}
...[методы]
}
Вопросы:
1)Это вообще нормально? Так принято делать? И главное я не могу понять зачем, можно это как-то иначе реализовать? 2)Зачем Nested пустой статический конструктор?
Аноним 07/10/16 Птн 20:15:35 #468 №852423 
>>852359
начнем с того, что "стандартный" делегат - это такой же тип делегата, как и все остальные, ничем не менее стандартные как RoutedEventHandler, MouseRventHandler и т.д.
как тебе подписаться на событие - решай сам: через new HuiPizdaDelegate, через += Method, через +=(s,e)=>{ }
вот, почитай крч: https://m.habrahabr.ru/post/198694/

>>852364
тебя, надеюсь, не реализация синглтона смущает? пустой конструктор - это, скорее всего, архаизм. когда-то там чота было, возможно даже инициализация самого синглтона, а потом перекочевала куда надо. в любом случае наличие пустого статического конструктора плоды не делает и перфоманс не поломает.
само вложение классов, вероятней всего, связано с попыткой разделения зависимостей/функционала. все дело в том, что за функционал населяет оба класса, и, самое главное, какова их история. может быть, если копнуть за годы назад, окажется, что все было по-другому и раньше было лучше
Аноним 07/10/16 Птн 21:33:40 #469 №852479 
>>852423
>https://m.habrahabr.ru/post/198694/
>Перво-наперво: события (event) не являются экземплярами делегатов. А теперь снова: События — это НЕ экземпляры делегатов.

Ну, что скажешь?
Аноним 07/10/16 Птн 21:50:45 #470 №852488 
>>852479
оо, ну я теперь понял твой вопрос

принципиально - да, конечно, делегат != событие (так же как класс != структура, enum != int/long), чем я, наверное, смутил тебя децл.

если совсем сгладить все - событие можно представить как частную форму делегата, но, опять таки, именно так и воспринимать сее не стОит
Аноним 07/10/16 Птн 22:11:29 #471 №852513 
>>852423
Не знал про сигнлтоны, спасибо что, прояснил
Аноним 07/10/16 Птн 22:50:46 #472 №852536 
Хотел спросить в /ra, но думаю здесь корректнее.
Шарпаны, поясните, неймспейс Windows.Devices.Gpio можно использовать только для windows IoT?
Аноним 08/10/16 Суб 11:38:31 #473 №852727 
Можно ли обеспечить для приложения совместимость с виндой вплоть до ХР? Можно как-то сделать чтобы было не обязательно устанавливать .netframework для того, чтобы моё приложение работало?
Аноним 08/10/16 Суб 11:50:39 #474 №852734 
>>852727
1 - пикрелейтед
2 - хз, насколько я знаю, программы сисярпа запускаются в виртуальной машине, которая, рискну предположить, сама берётся из .net framework'a.
Аноним 08/10/16 Суб 11:51:06 #475 №852735 
14759166663060.png
>>852734
Аноним 08/10/16 Суб 11:54:37 #476 №852737 
>>852727
А что у тебя за приложения?
Если ASP.NET или console, то можно попробовать CoreCLR.
Аноним 08/10/16 Суб 12:32:09 #477 №852748 
Где можно почитать про то, как правильно оформлять код? Ну типа куда пихать свои классы и т.д.
Аноним 08/10/16 Суб 13:24:06 #478 №852784 
>>852748
на хабре.
Аноним 08/10/16 Суб 13:25:38 #479 №852788 
14759223389780.png
>>846080
Task Scheduler.
Аноним 08/10/16 Суб 16:05:35 #480 №852871 
14759319356190.jpg
Почему 4 раза повторяются результаты, где я накосячил?
http://ideone.com/JGo8qY
Аноним 08/10/16 Суб 16:11:17 #481 №852879 
>>852871
>foreach (DriveInfo di in dis)
>DirectoryInfo dir = new DirectoryInfo(/di.Name/"H:\\");
Аноним 08/10/16 Суб 16:27:16 #482 №852898 
14759332368110.jpg
>>852879
Точно, на каждый экземпляр диска же запускается поиск.
И еще вопрос по ошибкам с доступом к папкам, как его обойти?
Аноним 08/10/16 Суб 17:14:04 #483 №852922 
>>852898
catch (UnauthorizedAccessException)
Аноним 08/10/16 Суб 17:22:15 #484 №852927 
>>852922
Спасибо
Аноним 08/10/16 Суб 20:12:13 #485 №853006 
14759467330680.jpg
>>852922
Помоги, анон!
Что написать-то надо в катче?
Обновил код
http://ideone.com/JGo8qY
Аноним 08/10/16 Суб 20:17:37 #486 №853010 
Почему ref и out переменным нельзя задать значение внутри анонимного метода?

public Task GetAsync(string name, out Texture targetVariable)
{
var task = Task.Run(() => Get(name)).
ContinueWith(t =>
{
targetVariable = t.Result;
});
backgroundLoadingTasks.Add(task);
return task;
}
Аноним 08/10/16 Суб 20:35:30 #487 №853018 
>>853006
Ничего не надо, особенно throw.
Аноним 08/10/16 Суб 20:40:10 #488 №853019 
14759484110260.jpg
>>853018
Вот без throw
Аноним 08/10/16 Суб 20:44:19 #489 №853023 
>>853019
Почему ты без дебага запускаешь?
Аноним 08/10/16 Суб 20:50:23 #490 №853027 
14759490236460.jpg
>>853023
Потому что для меня там все китайская грамота :-(
Файл проверил, галочек онли рид на нем не стоит.
Аноним 08/10/16 Суб 21:34:02 #491 №853042 
А доставьте плиз каких-нибудь ресурсов с задачками для ньюфагов, с использованием винформочек. Что-то типа получения обратной матрицы и т.д.
Аноним 08/10/16 Суб 21:43:29 #492 №853046 
>>853027
Ну зато увидишь где у теб падает. Значит try/catch нужно еще и здесь можель попробовать запускать от админа свое приложение, может тогда доступ будет
Аноним 08/10/16 Суб 21:56:39 #493 №853052 
>>853010
памушта после запуска эвейт управление передается вызывающему коду, где ожидается, что реф/аут будут инициализированы, что не является гарантией
Аноним 09/10/16 Вск 03:11:28 #494 №853181 
Есть какой-то сайтик, где можно покодить с подсказками как на код академи?
Аноним 09/10/16 Вск 13:06:39 #495 №853278 
>>853052
Где ты тут await увидел?
мимокрокодил
Аноним 09/10/16 Вск 13:17:00 #496 №853281 
>>853181
Dotnetcademy, но там есть баг, отчего один урок нельзя пройти на 100%. В остальном годнота.
Аноним 09/10/16 Вск 13:40:19 #497 №853300 
>>853278
мимокрокоди дальше
сильно вероятно, что код, потребляющий эту таску, будет с эвэйт. даже если не так, то конпелятор совершенно справедливо предполагает, щито метод может/будет выполняться асинхронно
Аноним 09/10/16 Вск 16:45:19 #498 №853377 
Какая сейчас самая модная технология GUI в шарпах? Wpf уже не в моде?
Аноним 09/10/16 Вск 17:11:24 #499 №853414 
>>853377
ну почему же?
Аноним 09/10/16 Вск 17:18:47 #500 №853417 
14760227276390.jpg
Вкатываюсь с нуля, в идеале хочу запилить свой фотошоп с имитацией масла, жидкостей и прочих партиклес. Поясните что курить для графики на C# для самых тупых, нашел какого-то мужика (пикрилл) для основ и уроки в которых делают пейнт, я их посмотрел и один повторил, не знаю правда нахуя, все равно ничего не понял.
Аноним 09/10/16 Вск 18:02:30 #501 №853430 
>>852488
Ок, спасибо.
Я думаю, я разобрался, и мне кажется ты не совсем прав.

Делегат, в контексте события, нужен толькр для того, чтобы определить сигнатуру методов, которые могут подписаться на событие.

События, которые включены в среду я использую SharpDevelop, например:
gridView.SelectionChanged
radioButton.CheckedChanged
уже определены с помощью делегата EventHandler. В этом можно убедиться, если посмотреть на код этих событий.
Поэтому, метод можно напрямую подписать на события, которые поставляются со средой.
Если использовать свои какие-то события - придется использовать делегат для определения сигнатуры методов.
Аноним 09/10/16 Вск 18:21:40 #502 №853436 
>>853417
> что курить для графики на C#
> C#
Ничего там нет. Нормальное 2D рисование и C# - понятия практически несовместимые (не, ну можешь конечно рисовать через GDI, только никому не рассказывай).
А с учётом того, что ты и C# не знаешь (раз тебе требуются уроки с твоего пика), то выкатывайся оттуда и закатывайся на C++. Программирование под DirectX начиная с 10.1 очень сильно упростили, ищи мануалы под Direct2D, и вперёд.
Аноним 09/10/16 Вск 19:18:32 #503 №853459 
>>853046
Угу, поставил два катча на занятые и недоступные и вроде бы заработало. Спасибо.
Аноним 09/10/16 Вск 22:19:24 #504 №853604 
Так-с, господа полубоги, помогайте. В общем меня приглашают стажироваться в одну фирму топовую для нашей мухосрани, кстати. А они там занимаются аспом.
Проблема в том, что я дочитываю Троэлсена и понемного программирую разные програмки уровня laba1, и совершенно не знаю что и в каком порядке учить.
Если что, в вебе вообще не шарю, так что подскажите плиз
Аноним 09/10/16 Вск 23:04:37 #505 №853642 
>>853604
metanit
начни, а там че-нить другое найдешь
Аноним 09/10/16 Вск 23:10:02 #506 №853644 
>>853430
Полный трєдж специалистов, никто не может сказать или я на правильном пути и похвалить?
Аноним 10/10/16 Пнд 00:04:37 #507 №853669 
>>853644
От того, что ты используешь SharpDevelop события по другому работать не начниают.Почитай еще.
Аноним 10/10/16 Пнд 08:35:36 #508 №853779 
Зачем использовать winapi в c#? Дайте интересных задач чтобы разобраться.
Аноним 10/10/16 Пнд 08:39:52 #509 №853780 
>>853779
Да банально, понадобилось мне на лету подредактировать PEB запущенного процесса другой программы. Она была криво написана, и в какой-то момент работы портила его сама себе. Вот делал минификс для этого.
Аноним 10/10/16 Пнд 16:16:45 #510 №853971 
В HttpWebRequest устанавливаю хедеры для запроса и когда делаю req.Headers.Set("Accept-Encoding", "gzip, deflate, br"), то вместо текста страницы получаю кракозябры. Если её закомментировать, то всё в порядке. Через браузер смотрел, хедер в запросе именно такой. В чём прикол? Может я чего-то не понимаю?
Аноним 10/10/16 Пнд 16:29:46 #511 №853975 
>>853971
gzip же сжимает данные
Аноним 10/10/16 Пнд 17:27:20 #512 №854001 
Какой проект можно разработать чтобы прикрепить к резюме на джуниора?
Аноним 10/10/16 Пнд 18:06:43 #513 №854019 
>>853971
Когда ты делаешь
> req.Headers.Set("Accept-Encoding", "gzip, deflate, br")
то ты говоришь удаленному серверу: мол, я могу и сжатые данные принять. Вот он тебе и шлёт сжатые. А твой HttpWebRequest по умолчанию их расжимать не умеет.
Аноним 10/10/16 Пнд 18:27:23 #514 №854029 
>>854001
rss reader
Аноним 10/10/16 Пнд 18:48:44 #515 №854038 
>>854019
Стоит их сжатые получать, а потом разжимать? Выигрышь от этого будет?
Аноним 10/10/16 Пнд 20:01:50 #516 №854100 
>>854038
ну во всем не выиграешь. выбирай, что тебе важнее: нагрузка на трафик плюс, возможно, дополнительные расходы на unmanaged-память, либо нагрузка на проц в лице декодирования сообщения
Аноним 10/10/16 Пнд 20:05:30 #517 №854103 
14761191304360.jpg
Асинхрач, а как можно организовать цикл по таскам/акшонам с несколькими awaitами?
Пробовал так:
Parallel.ForEach (uri, async (x) => {
y = await Processing(x);
z = await Processing(y);
Console.WriteLine(z);
})
Console.Wrilteline(«цикл завершён»);

Но задача считается выполненной на первом-же awaitе. И первой записью в консоли будет «цикл завершён».
Аноним 10/10/16 Пнд 21:17:46 #518 №854153 
Здравствуйте поцаны, я решил вкатиться именно в этот язык, уже прошел небольшой курс от гикбреинс по виндоформам, понял что это совсем детский сад и решил, что никто лучше ребят с двача не разбирается! Так что пригрейте дурачка
sageАноним 10/10/16 Пнд 21:17:53 #519 №854154 
>>853436
Двачую, с DirectX и С++ даже в моём мухосранске были вакансии в геймдев.
C# больше используется для серверного и декстопного по финансового сектора. Хотя, когда проходили в универе мы делали подобие пейнта, это теоретически возможно. Уроки с пика >>853417 годные.

Аноним 10/10/16 Пнд 21:20:03 #520 №854156 
>>854153
чё тебе греть? все деньги в asp.net. десктоп сисярпа в лице WPF и winforms умирает перерождается в веб и мобильных устройствах. Unity имхо годится для 2д индюшатины, но это на любителя.
Аноним 10/10/16 Пнд 21:20:58 #521 №854157 
>>854153
Любая книга по C# из яндекса/гугла.
Любыве бесплатные видеоуроки на ютуб.
Аноним 10/10/16 Пнд 21:22:01 #522 №854159 
>>854156
Ну нужно же с чего-то начать второкурснику, который только и умеет что калькуляторы писать(даже это почти не умею)
>>854157
ИТВДН посоветовали, но там и они бабла хотят.
Аноним 10/10/16 Пнд 21:49:10 #523 №854174 
>>854103
Parallel.ForEach был бы нужен, если бы у тебя были блокирующие методы, а у тебя асинхронная кашка, к ней можно подойти сбоку
http://pastebin.com/wcXBb91D
Аноним 10/10/16 Пнд 22:05:55 #524 №854185 
Не могу найти нормальный учебник на русском. Вообще ничего нет, что ли?
Аноним 10/10/16 Пнд 22:23:23 #525 №854202 
>>854185
Так троелсен/албахари/скит/рихтер вроде все есть. Но читать всё равно надо на ангельском, а то посоны на двощах засмеют.
Аноним 10/10/16 Пнд 22:24:53 #526 №854204 
>>854174
.AsParallel().ToArray() смеха ради
Аноним 10/10/16 Пнд 22:28:49 #527 №854207 
>>854202
Блин, я то ангельский понимаю, но русский то понятнее..
Аноним 10/10/16 Пнд 22:31:06 #528 №854208 
14761278668520.png
>>854207
>русский то понятнее
Врети
Аноним 10/10/16 Пнд 22:32:22 #529 №854210 
>>854208
Не врети!
Аноним 10/10/16 Пнд 22:41:08 #530 №854216 
14761284688580.png
>>854210
Аноним 10/10/16 Пнд 22:57:04 #531 №854231 
Я понимаю, что прошу бред, но все же, есть ли тут люди которые смогут терпеть мои бредовые вопросы и не посылать сразу же нахуйв гугл?
Аноним 10/10/16 Пнд 22:59:05 #532 №854233 
>>854231
А ты вопросы спрашивай, а не метавопросы.
Аноним 10/10/16 Пнд 23:00:34 #533 №854235 
>>854233
Есть стринг с двоичным числом как мне его записать в массив?(нужно сделать из прямого кода обратный)
Аноним 11/10/16 Втр 00:34:48 #534 №854296 
>>854235
стринг и есть массив символов. (ну или класс с индексатором, ссылающемся на List<char> а может и вообще char[], не рефлектил
)
на ввод подаётся число в двоичном представлении, или ты парсишь интовое число в 10 СС и загоняешь его побитово в строку?
Аноним 11/10/16 Втр 00:35:04 #535 №854298 
>>854029
Смешно.
Аноним 11/10/16 Втр 00:36:20 #536 №854301 
>>854296
Я ввожу в текстбокс допустим 1|101 нажимаю кнопку, мне возвращает 0|010
Аноним 11/10/16 Втр 09:33:02 #537 №854391 
>>854174
Спасибо! Работает как надо!
Аноним 11/10/16 Втр 11:11:18 #538 №854441 
>>854298
что тебе смешно?
Нахуя спрашиваешь тогда?
Аноним 11/10/16 Втр 12:38:23 #539 №854520 
>>853436
>>854154
Спасибо за советы, просто мужичок с этих уроков сказал что С# может делать тоже что и C++ и даже больше, типа C++ это ООП, а С# это КОП который включает в себя ООП, а еще он легче. По поводу DirectX я сразу загуглил есть ли он под .NET и нашел SlimDX который вроде полный аналог. Надо короче еще посидеть подумать, поискать больше разной инфы.
Аноним 11/10/16 Втр 12:49:52 #540 №854526 
Почоны, есть ли у вас какие-то сайд проекты на которых вы зарабатываете? Есть ли вариант иметь ~50к в месяц, но при этом не тратить на работу по 10 часов 5 дней в неделю? В обычном фрилансе, я так понимаю дотнетчикам не место, но как быть-то тогда?
Аноним 11/10/16 Втр 13:07:29 #541 №854541 
>>854520
> SlimDX
Он в разработке до сих пор, и неизвестно, когда допилят. А в C++ всё есть здесь и сейчас.

> мужичок с этих уроков сказал что С# может делать тоже что и C++ и даже больше
Мужичок твой говорит, да недоговаривает. Не надо его слушать, он походу сам не особо понимает, что к чему. Потрать сам время, и выясни различия этих языков. Тогда тебе станет понятно, почему тебе для графики рекомендуют C++, а не C#.
Аноним 11/10/16 Втр 14:22:57 #542 №854593 
Что изучать для работы с бд?
Аноним 11/10/16 Втр 15:20:10 #543 №854643 
>>854520
Там где directx, обычно требуется высокая скорость, при прочих равных, c++ будет быстрее шарпа, плюс, вроде как, во время сборки мусора остальные рабочие потоки приостанавливаются, в обычном софте будет незаметно, но для графы критично
Аноним 11/10/16 Втр 15:41:03 #544 №854658 
>>854593
EF и sql
Аноним 11/10/16 Втр 16:55:24 #545 №854688 
С помощью чего можно рисовать в шарпе простенькие рисунки? Например визулизация игры "жизнь", крестики-нолики, морской бой и т.д.
Аноним 11/10/16 Втр 17:10:47 #546 №854701 
>>854301
winforms с его picturebox'ом и обработкой для него событий mouseup, mousedown, mousemove. wpf с его InkCanvas'ом.
Аноним 11/10/16 Втр 17:18:32 #547 №854714 
Что за конструкция [/тут какая-нибудь фигня, например dll/] (например вот такой атрибут перед main методом в сгенерированном коде [STAThread])?
Аноним 11/10/16 Втр 20:08:27 #548 №854845 
>>854701
Ты не понял. Я уже сделал это, теперь мне нужно разбить этот стринг по разрядно
Аноним 11/10/16 Втр 20:11:21 #549 №854850 
>>854845
ой, я не тебе отвечал.
>>854688 --- чмотри суда → >>854701

Аноним 11/10/16 Втр 20:14:20 #550 №854852 
>>854845
а в твоей ситуации я бы делил строку на подмассивы по '|', потом присваивал каждому элементу массиву строк его же, только приведённому к int с NumberStyle.Binary, обработанного битовым оператором отрицания "~", и снова взятому через ToString()
Аноним 11/10/16 Втр 21:28:39 #551 №854912 
>>854852
Ебать, как сложно, что я ничего не понял.
Аноним 11/10/16 Втр 22:03:02 #552 №854936 
>>854296
на char*

>>854593
ado.net, entity framework, nhibernate, если реляционные

>>854714
атрибуты
Аноним 11/10/16 Втр 22:07:36 #553 №854940 
>>854714
а,ты знаешь про атрибуты. тогда хз, в чем твой вопрос
Аноним 12/10/16 Срд 10:04:45 #554 №855149 
>>854185
Чем тебе Шилдт не угодил?
Аноним 12/10/16 Срд 11:12:06 #555 №855184 
14762599266740.png
14762599266751.png
>>852488
EventHandler это тип делегата.
gridView.SelectionChanged и radioButton.CheckedChanged это объекты делегата.
Единственное отличие обычного объекта делегата от объекта с припиской event — это то, что со вторым за пределами класса, в котором он объявлен, можно делать только 2 операции: += и -=.
Аноним 12/10/16 Срд 11:43:00 #556 №855197 
14762617810310.png
14762617810321.png
Сишарпач, что же это творится? Решил сесть за изучение EF, но студия как обычно "не хочет".
Порядок действия:
Project - Add New Item - ADO.NET Enity Data Model - EF Designer from database
Выбрал работающее подключение, нажал далее и дальше возможно 2 варианта:
1. На чистом проекте EF 6 не доступен, доступен только EF 5. Выбираю EF 5 нажимаю далее. Выбираю какие таблицы нужны и нажимаю финиш. В ответ получаю ошибку (пик1)
2. После установки MySQL через nuget EF 6 и EF 5 становятся не доступны (пик2)
Как решить проблему? Как мне завезти EF 6/EF 5?
Аноним 12/10/16 Срд 12:55:10 #557 №855225 
>>855184
Не единственное: event можно пихать в интерфейс, чего не сделать с делегатом
Аноним 12/10/16 Срд 14:29:41 #558 №855260 
>>855197
для мускуля нынче разве не надо коннектор устанавливать?
Аноним 12/10/16 Срд 17:58:31 #559 №855399 
>>855260
Коннектор и плагин для студии установлены, они шли вместе с MySQL
Аноним 12/10/16 Срд 21:22:33 #560 №855513 
Кто-нибудь уже пилит что-нибудь на .Net core? Что вообще думаете по теме, взлетит? А то кругом шум, что .Net вот-вот умрет, а модные ребята на Go и прочий Elixir переходят
Аноним 12/10/16 Срд 21:47:34 #561 №855535 
14762980546960.png
Шарпач-wpfач, помоги говнокодеру советом. Есть xml-файлы примерно такой структуры: http://pastebin.com/ynTQAgBL (приложение может их загружать, либо генерировать). Вкратце, если ты посмотрел пастебин: Есть вопросы. Вопросы расфасованы по темам и предметам, в свою очередь темы тоже расфасованы по предметам. Все эти три хуйни можно добавлять/удалять. Для отображения всего этого есть 3 ListView пикрелейтед. Проблема в том, что я не знаю как это хранить в программе, да еще с учетом MVVM. К тому же, мне нужно по предмету получить список его тем, или по теме узнать ее предмет. Попробовал нахуярить несколько классов, но че-то над кодом плакать хочется.
Аноним 12/10/16 Срд 22:45:20 #562 №855584 
>>855535
я бы попробовал держать файл xml на ЖД, потом через какой нибудь xml reader считывать его в DataTable из ADO.net (а им точно можно xml скармливать, правда, не помню как.) а можно и поискать, как его прям в ObservableCollection захуячить (для этого придётся Model-классы создавать), ну и потом к itemsSource'ам listView присваивать полученный datatable или observablecollection.
Аноним 12/10/16 Срд 23:26:17 #563 №855626 
14763039776080.jpg
>>855513
>Кто-нибудь уже пилит что-нибудь на .Net core?
Юзаю еще с первых беток.

Разрабатываю в VisualStudioCode на своем макбуке.
В основном пилю бэкенды для своих мобильных приложений и деплою в docker под linux.
Для базы данных юзаю Postgress через EF Core.

Получается в разы дешевле чем возится с виндоус серверами (это важно тк приложения opensource).

Сейчас жду когда Xamarin переведут на CoreCLR, вот тогда прикольно будет.
А еще прикольно будет когда добавят сборку нативных бинарников,
можно будет рассылать один бинарник вообще без зависимостей на .net (как в Go).
Аноним 13/10/16 Чтв 00:03:01 #564 №855655 
>>855584
Спасибо за ответ. Я додумался до решения. Заюзал три ObservableCollection, в общем.
Аноним 13/10/16 Чтв 06:19:51 #565 №855744 
14763287916540.png
В заглавном треде игнорят.
Поступил в универ на заочку. Буду изучать c#. Подскажите годную книгу по данному языку для изучения с нуля.
Аноним 13/10/16 Чтв 06:35:12 #566 №855747 
>>855744
Миллиард раз говорилось уже. Книги устаревают. Не нужно их читать. Выбирай себе реальную задачу, и разрабатывай, изучая по пути. По ключевым фичам разных версий языка можешь погуглить или почитать хабр, чтобы быть в курсе, что в языке нового (и не писать вечно под фреймворк 3.5 или даже 2, как некоторые делают).
Аноним 13/10/16 Чтв 08:27:26 #567 №855770 
>>855747
ну хоть не 1.1
sageАноним 13/10/16 Чтв 09:47:27 #568 №855779 
>>855744
Ты тупой или читать (шапку) не умеешь?
Аноним 13/10/16 Чтв 12:40:50 #569 №855839 
>>855626
Что посоветуешь почитать/посмотреть по мобильным бэкендам на .net core?
Аноним 13/10/16 Чтв 13:13:44 #570 №855849 
>>855779
человек, не умеющий читать, спрашивает, что прочитать
Метрики сложности Аноним 13/10/16 Чтв 15:59:37 #571 №855936 
Каким тулзами их можно посчитать?
Важно что бы это работало без Visual Studio и запускалось на mono/coreclr.

Может есть какие консольные утилитки, типа как для запуска на CI сервере?

Пишу на маке под xamarin.
Аноним 13/10/16 Чтв 19:02:54 #572 №856095 
14763745744270.jpg
Котаны, вот есть простенький класс ракет, и я хочу создавать уже конкретные экземпляры.Но без передачи хуеву тучу параметров,а примерно вот так - RocketAmmo = new RocketAmmoLV(); Корчое сделать разные наследники от RocketAmmo, и чтоб наследников делать без передачи в конструктор параши. В одном наследнике ракеты по 10 бьют, а во втором по 20. Надеюсь вы поняли. Удобства ради.
Аноним 13/10/16 Чтв 19:07:48 #573 №856100 
ПЕРЕКАТ
https://2ch.hk/pr/res/856099.html
https://2ch.hk/pr/res/856099.html
Аноним 14/10/16 Птн 13:34:55 #574 №856400 
>>851102
ну тогда могу только пожелать удачи.
comments powered by Disqus

Отзывы и предложения