М.Двач / Программирование

Этого треда уже нет.
Это копия, сохраненная 29 июня 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

281 Кб, 1920x1080

OFFICIAL .NET THREAD №26 (C#/F#/VB.NET) # OP 21 Май, 18:52 #749549 В конец треда | Веб

Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.

Литература вторым постом

1. Ресурсы:
- http://stackoverflow.com/questions/tagged/c#
- http://www.tutorialspoint.com/csharp/
- http://professorweb.ru
- http://net-informations.com
- http://habrahabr.ru/hub/csharp/

2. Онлайн-компиляторы:
- https://dotnetfiddle.net/ - возможно лучший вариант. Встроено немного убогое, но все-таки автодополнение и проверка синтаксиса.
- http://ideone.com/
- http://csharppad.com/
- http://www.tutorialspoint.com/compile_csharp_online.php
- http://rextester.com/l/csharp_online_compiler

3. WinForms или WPF?
Зависит от задачи. Для небольших проектов, скорее всего, будет достаточно винформочек. В случае, если разрабатываемое приложение достаточно серьёзное, то возможно его стоит писать с использованием WPF. WPF очень хорошо работает с паттерном MVVM ( https://ru.wikipedia.org/wiki/Model-View-ViewModel ), и позволяет пилить очень кастомизированные интерфейсы с помощью XAML, что в случае WinForms, делать намного сложнее.

4. Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить?
Неправда. C# довольно активно развивается, недавно вышел новый компилятор, шестая версия шарпа, и уже активно разработывается седьмая. Весь дотнет понемногу становится опенсорсным, а ASP.NET становится независимым от платформы. В некотором смысле понемногу вымирают десктопные приложения с развитием веб-технологий, но в том же энтерпрайзе он еще очень даже востребован.

5. Какую ИДЕ выбрать?
Для Windows самым очевидным вариантом будет Visual Studio (https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx). Студия распространяется в двух редакциях: бесплатная коммьюнити-версия и платный энтерпрейс эдишн. В большинстве случае будет достаточно Community-версии: она поддерживает и C#, C++, VB.NET и F#, а так же имеет возможность установки дополнений
Для мака и никсов самый юзабельный вариант - MonoDevelop ( http://www.monodevelop.com/download/ ).
Для vim можно использовать OmniSharp ( https://github.com/OmniSharp/omnisharp-vim ).
Кросплатформенный полуредактор/полуIDE VS Code ( https://www.visualstudio.com/en-us/products/code-vs.aspx )
Также существуют плагины для Atom'а и Sublime Text, но функциональность там достаточно сильно урезана.
Кроме того, в данный момент JetBrains активно пилит свою IDE для шарпа (Project Rider), вероятно в ближайшее время станут доступны первые EAP. IDE заявлена как кросплатформенная, со всем решарпер-функционалом, поддержкой отладки, моно и .net core.
SharpDevelop - еще одна IDE для C#, отличается малым размером (около 20мб) и опциональной портабельностью, при этом имея дизайнер WinForms и WPF, а также интеграцию с FxCop, StyleCop и прочими ништяками. Если хочется что-то по быстрому набросать, а выкачивать гигабйты нет желания, то возможно SharpDevelop будет лучшим вариантом.

6. С# для мобильной разработки
Если нужны инструменты для разработке под мобилы, ставь сразу VS2015 и при установке выбирай все нужные компоненты.
Больше информации тут - https://msdn.microsoft.com/ru-ru/library/dn771552.aspx
Из актуальной литературы
- Xamarin Mobile Application Development
- Xamarin Essentials

7. Дополнительные инструменты для разработки на C#
LINQPad - сорт оф REPL, с возможностью быстрого подключения к БД и удобной визуализацией данных
dnSpy - декомпилятор, малоизвестный форк ILSpy, где реализована возможность модификации IL-кода прямо в EXE и DLL файлах, отладка IL-кода и много других фич для reverse engineering'а. Плюс няшные темы как в студии
dotPeek - бесплатный декомпилятор от JetBrains
scriptcs - для запуска C# кода как скриптов, возможность использовать как REPL

8. Расширения для студии
ReSharper - одно из известнейших. Рефакторинги, умный автокомплит, настраиваемый стиль кода. Платный, но можно стянуть с торрентов
Supercharger - показывает "карту" с классами, методами и всем остальным сбоку от кода с возможностью прыгать по ним
Indent Guides - показывает вертикальные линии на каждом уровне отступов.
Format document on Save - форматирует код каждый раз при сохранении документа
Code alignment - Выравнивает код по указанным символам. Удобно, например, при инициализации словарей или в перечислениях

Обзор Roslyn: https://github.com/dotnet/roslyn/wiki/Roslyn Overview
Новые возможности C# 6.0: https://github.com/dotnet/roslyn/wiki/New-Language-Features-in-C#-6

Код этой шапки: http://pastebin.com/cKKXYArs

Прошлый тред тонет здесь: https://2ch.hk/pr/res/736660.html (М)

Ответы>>750051>>750374>>752971>>753197>>754496

# OP 21 Май, 18:52 #2 #749551

9. Что почитать?
- The C# Player's Guide, второе издание (RB Whitaker) - отличная книга для ньюфагов в шарпе, все расписывается довольно подробно, очень много примеров кода.
- C# 6.0 in a Nutshell (Joseph Albahari и Ben Albahari) - огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином
- C# 6.0 Pocket Reference (Joseph Albahari и Ben Albahari) - просто выжимка из справочника, можно всегда держать рукой
- C# 6.0 and the .NET 4.6 Framework (Andrew Troelsen) - 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.
- C# 6.0 Cookbook (Jay Hilyard и Stephen Teilhet) - книга в формате "проблема-решение", можно пройтись по оглавлению, найти интересные проблемы и попыпаться самому решить, а уже потом посмотреть представленное решение. Книга скорее не для ньюфагов, а для тех, кто уже знаком с шарпом.

10. Более хардкорный материал
- C# in Depth (Jon Skeet) - написана в виде истории версий C#, начиная с C#1.0. Описываются возможности, которые были добавлены в определенной версии и далее достаточно хардкорно и подробно эти возможности расписываются.
- Writing High Performance .NET Code (Ben Watson) - охуенная книга. В основном фокуируется на оптимизации дотнет-говна. Методы оптимизации проложений, профилирование, вот это все. Крутейшая и достаточно детальная глава по GC. Рассматриваются достаточно известные проблемы вроде "for vs foreach", "класс vs структрура", кастинг, боксинг, перфоманс регулярок, коллекций, исключений. Короче все что нужно, чтобы вам перезвонили.
- CLR via C# (Jeffrey Richter) - это классика, это знать надо.

11. Хочу еще хардкорней
- C# Deconstructed (Mohammad Rahman) - введение в CLR, модели памяти и выполнения в CLR, байтоебство, JIT. Книга достаточно коротенькая, менее 200 страниц, можно осилить за пару дней. Желателен опыт работы WinDbg и понимание устройства PE-формата.
- Expert C# 5.0 with .NET 4.5 Framework - еще одна книга этого автора, в этот раз намного длиннее. Очень много IL, анализа и разбора стандартной либы (те же коллекции), разбор ивентов, дегегатов, асинхронности etc. на уровне байткода.
- .NET IL Assembler (Serge Lidin) - ILёбство, во многих местах повторяет документацию MSDN, но при этом имеет много интересных дополнений и заметок. Кроме того все неплохо структуировано и разложено по красивым табличкам

12. Литература по WPF
Из более-менее актуального можно выделить пару книг:
- Pro WPF 4.5 in C# (Matthew MacDonald)
- Windows Presentation Foundation 4.5 Cookbook (Pavel Yosifovich)

13. Литература по ASP.NET
- Professional ASP.NET MVC 5 (Jon Galloway, Brad Wilson, K. Scott Allen, David Matson)
- Pro ASP.NET MVC 5 Platform (Adam Freeman)
- Beginning ASP.NET for Visual Studio 2015 (William Penberthy)

14. Литература по асинхронности, параллелизму и всему такому
- Concurrency in C# Cookbook (Stephen Cleary) - книга, написанная в формате "проблема - решение". Кроме базовых вещей, вроде асинков и параллелизма рассматриваются TPL Dataflows, Rx (реактивные расширения), тестирование всего этого асинхронного добра, ну и работа этого всего на более низких уровнях абстракции
- Multithreading in C# 5.0 Cookbook - в основном ничего интересного, но есть довольна неплохая глава про синхронизацию, пусть и не слишком детальная
- Pro Asyn_chronous Programming with .NET (Richard Blewett, Andrew Clymer) - опять же, интересного немного, но неплохие главы про асинхронность + UI и анализ дампов памяти в windbg

15. Литература не по шарпу, но так или иначе связанная с языком
C# Game Programming Cookbook for Unity 3D (Jeff W. Murray) - разработка на шарпе под Unity
Introduction to Neural Networks with C# (Jeff Heaton) - изучение нейронных сетей с примерами кода на шарпе. Под конец пишем программу для распознавания символов и нейроботов.
Machine Learning Using C# Succinctly (James D. McCaffrey) - довольная коротенькая книга на тему машинного обучения с примерами кода на C#. Ничего особого: k-средние, классификация, наивный байес, но с кодом, который всегда можно поразбирать, если что неясно.

16. Но я не знаю английский, как я буду это все читать?
На некоторые из перечисленных книг есть переводы, которые можно найти на том же рутрекере, однако, зачастую эти переводы неактальны, содержат неточности, и не самые понятные варианты перевода. Кроме того, переводы обычно пилятся только для нескольких самых популярных книг, более-менее серьёзный материал не переводят. Всегда можно сесть со словарем и понемногу читать, переводя непонятные фрагменты. Это очень полезно, так как в любом случае в разработке без знания ангельского делать нечего. Если очень хочется, то гуглить по запросам: "C# 5.0, Справочник. Полное описание языка", "C# для профессионалов. Тонкости программирования", "Программирование на платформе Microsoft .NET Framework 4.5 на языке C#"

17. Что еще нужно знать, чтобы взяли работать за еду?
- SQL - подойдет люая книг по MSSQL/MySQL, базовые запросы, SELECT, INSERT, DELETE, UPDATE. Джойны, индексы, нормализация. В контексте шарпа еще ORM: Entity Framework, Dapper
- Системы контроля версий - обычно гита достаточно: add/commit/push, merge, rebase, checkout, remote's, разрешение конфликтов, трехпанельные дифф-менеджеры, cherry-pick
- Гитхабы-гитхабчики - issues, организация пулл-реквестов, интеграция с appveyor, теги, релизы, маркдаун
- Алгоритмы - сложность алгоритмов, сортировки (пузырек, быстрая, вставками), поиск, рекурсия, алгоритмы на строках
- Структуры данных - связанные списки, деревья (бинарные, красно-черные, b-деревья), хеш-таблицы, графы
- Если идти в веб - HTML, CSS, JavaScript, веб-сокеты, REST
- Паттерны проектирования, стиль кода, внедрение зависимостей, MVVM (если хочется в WPF), SOLID

18. Я не умею читать, что посмотреть?
- Programming with C# - https://www.edx.org/course/programming-c-microsoft-dev204x-0
- Beginning Game Programming with C# - https://www.coursera.org/course/gameprogramming
- C# Fundamentals: Development for Absolute Beginners - https://goo.gl/meyyxO
- Коллекция видеоуроков, по всему дотнетовскому и смежным темам (250 часов, на русском) - https://nnm-club.me/forum/viewtopic.php?t=891636
- Набор курсов по C# от O'Reilly Media (28 часов, на английском) - http://rutracker.org/forum/viewtopic.php?t=5082978

Ответы>>763697

2 Кб, 471x167

21 Май, 19:24 #3 #749608

Шалом, бандиты. Пытаюсь вкатиться в WPF после форм, щас параллельно гуглю, но вдруг опытный анон подскажет как жить. Подскажите вот чо: как лучше сделать кнопку кастомной формы (конкретно в моём случае - шестиугольник, который выглядит как пикрелейтед)?

Ответы>>749609

21 Май, 19:27 #4 #749609

>>749608
Или прям ващпе кастомной не сделать и всё упирается в использование свойств для UIElement типа render transform и layout transform? Или можно сделать собственный UIElement и в нём просто обработать событие Click и прикрутить соответсвующие анимации при наведении, нажатии и прочем?

Ответы>>749613

21 Май, 19:29 #5 #749613

>>749609
Можно конечно, хуле нет?

Ответы>>749615

21 Май, 19:30 #6 #749615

>>749613
Ну то есть конкретно у кнопки прям совсем кастомную форму не сделать, максимум параллелограмм через RenderTransform.Skew?

56 Кб, 700x364

21 Май, 19:39 #7 #749630

Еще вопрос по WPF. Можно как то на фоне (в гриде/на окне) разместить текст посредством UIElement'a типа label или textblock, и чтобы при этом текст был деформированным типа как пикрелейтед? Еси да, то какое для этого свойство нужно менять? Или придётся делать кучу лэйблов, и каждый наклонять под нужный угол, чтобы текст получился изогнутым?

Ответы>>749647

21 Май, 19:55 #8 #749647

>>749630
> Или придётся делать кучу лэйблов, и каждый наклонять под нужный угол, чтобы текст получился изогнутым?
пиздец) Transformations же

21 Май, 20:22 #9 #749678

http://www.videosharp.info
Друзья, кому-нибудь знаком зис щит?
Годно ли?
Имеет ли смысл такой формат обучения?
Платить не буду, лучше поищу подобного в открытом доступе.
Вопрос в том, стоит ли на подобное тратить время.
Сейчас дрочу учебник по основам синтаксиса с#.
За что лучше взяться после него? Попутно сделал 6 лабораторных работ какого-то универа. Это важный вопрос, как составить дальнейший план обучения. Понимаю, что важно много практики. Но где лучше взять ее?

Ответы>>749683

21 Май, 20:36 #10 #749683

>>749678
на курсере лучше будут курсы, наверняка, если с английским все в порядке

Ответы>>749688

21 Май, 20:45 #11 #749688

>>749683
А что это, я просто не слышал о таком. Подскажи, пожалуйста.
Английский разве что чтение. На слух вообще практически не воспринимаю.

Ответы>>749698

21 Май, 20:55 #12 #749698

>>749688
coursera.org
там есть расиянские курсы, но не знаю, насколько они не на английском
также есть возможность включить субтитры, для некоторых курсов - с переводом

22 Май, 06:20 #13 #750051

>>749549 (OP)
Ребят, помогите.
Ебусь с формочками - никогда ими не пользовался.
Делаю хрестоматийную программу "жизнь" - сначала делал в консольном приложении, потом решил захуярить в форму.
Но получается так, что форма не воспринимает то что происходит в мэйне.
ЧТо делать?

Ответы>>750057>>750065>>750124

22 Май, 06:33 #14 #750057

>>750051
Понял, треды разные над сделать.

22 Май, 07:21 #15 #750065

>>750051
Блин, ребят, все равно не работает.

Ответы>>750093

22 Май, 09:25 #16 #750093

>>750065
все-равно непонятно, что ты делаешь и как

22 Май, 10:47 #17 #750124

>>750051
что значит
>что форма не воспринимает то что происходит в мэйне.
?
Форма и не должна воспринимать то, что происходит в мэине. насколько я помню, когда в мэине вызывается метод
Application.Run(new Form1());
начинается бесконечный цикл, в ходе которого форма обрабатывает события. и только после того, как ты закроешь форму, управление возвращается в мэин. вся логика должна быть прописана в самом классе формы.

22 Май, 11:02 #18 #750130

Почаны, а можно как то в xaml при установке размеров/местоположения UIElement'a задавать размер не просто числом типа <...Width = "50" /> а используя значение одного из параметров другого UIElement'a. Например, как установить ширину UIElement'a равной 10% от ширины основного окна? Width = "MainWindow.Width*0.1" не робит.

Ответы>>750134>>752371

22 Май, 11:07 #19 #750134

>>750130
http://stackoverflow.com/a/18909619
только в твоем случае размеры элемента, относительно которого происходит пересчет, надо обьявить через "*"

22 Май, 12:49 #20 #750196

Имеется приложение Windows Forms. Запускаю в нем поток на прием Udp пакетов. Когда приходит пакет, требуется вывести содержимое в TextBox. Как получить к нему доступ?

Ответы>>750233

22 Май, 14:03 #21 #750233

>>750196
https://msdn.microsoft.com/en-us/library/system.windows.forms.textbox.invoke(v=vs.110).aspx

22 Май, 15:42 #22 #750324

Што делать в WPF в следующей ситуации: создал шаблон кнопки через <ControlTemplate>, форму контрола задал через <Path.Data>, но клиентская область кнопки всё равно осталась прямоугольной. Как сделать клиентскую область такой же, как и форму контрола, прописанную в <Path.Data> ?

Ответы>>750327

22 Май, 15:47 #23 #750327

>>750324
Нашёл кривой на мой взгляд способ - задать соответствующий margin у Border'a в <Grid>'e, который находится внутри <ControlTemplate>'a. Вроде теперь только внутри формы срабатывают триггеры. Но всё же, есть какой то более правильный способ. Может там корректировка клиентской области в ксамл или типа того?

201 Кб, 1280x854

22 Май, 16:38 #24 #750374

>>749549 (OP)
Анончики, задаваю этот вопрос сразу в 2х тредах по C# и Java.

Есть знания в области геймдева со стороны 3D графики.
Хочу начать изучать кодинг.

И вот вопрос:
Что же будет перспективнее и более реально в соотношении время обучения/возможности на этом зарабатывать? На чем реальнее и перспективнее будет делать простые игры для мобилок?

Как вариант это уже более-менее знакомый мне Unity + C#
Либо Java + другой движок

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

Ответы>>751845>>760302

22 Май, 17:04 #25 #750398

Ребятки, у кого-нить есть свежий кряк решарпера 2016.1?
На торрентах ток старый 10.2(

22 Май, 22:11 #26 #750822

Вызывать Task.WaitAll внутри Task.Run это нормально или за такое обычно убивают нахуй? Хочу подождать несколько тасков без блокировки UI треда.

Ответы>>750837>>750866

22 Май, 22:16 #27 #750837

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

22 Май, 22:25 #28 #750866

>>750822
Похоже что это как раз то, что мне нужно.
http://stackoverflow.com/a/6123432

56 Кб, 700x364

23 Май, 00:08 #29 #750958

Есть какой нибудь способ изогнуть текст по дуге как пикрелейтед кроме как создавать собственный шаблон контрола, и заполнять его соответствующей логикой?

Ответы>>751863

23 Май, 19:55 #30 #751845

>>750374
Ни одного движка с жавой не припомню. Либо шарп, либо плюсы, либо говно влоде js и lia. Так что выбор очевиден.

Ответы>>751854

23 Май, 20:04 #31 #751854

>>751845
Есть libgdx/jmonkeyengine, но если подходить серьезно, желая завершить проект, а не написать очередной вращающийся куб, то альтернативы Unity|UE нет

23 Май, 20:14 #32 #751863

>>750958
RenderTransform

Ответы>>751866

23 Май, 20:20 #33 #751866

>>751863
И что в нём можно менять кроме Skew?

23 Май, 22:15 #34 #752038

https://www.coursera.org/learn/game-programming

Прошел вот этот курс на курсере. Было довольно изично. Что можно похардкорнее ебануть? Цель в перспективе начать зарабатывать мамкиным фрилансом. Или лучше пиздовать джуниором в конторку?

23 Май, 23:05 #35 #752096

Добра в хату, аноны!
Я не кодер, поэтому простите, если буду изъясняться не в вашей терминологии.
В общем, на работе дали задание написать программу на C# в Windows Forms.
Я разобрался со всем, кроме того, как сделать так, чтобы при нажатии на элемент в MenuStrip менялось содержимое формы, т.е. появлялись другие кнопки и элементы без вызова новой формы.
Думаю, что и с этим бы разобрался, но времени совсем нет. Поэтому буду весьма признателен, если дадите ссылку на исходник или напишете фрагмент кода, который позволяет реализовать то, что я описал выше.

Ответы>>752105>>752142

23 Май, 23:08 #36 #752105

>>752096
в обработчике события нажатия на элемент MenuStrip
void xxx(object s, EventArgs e)
{
Button B = new Button();

}

Ответы>>752107>>752108

23 Май, 23:11 #37 #752107

>>752105
>>752105
Я неправильно выразился. Нужно чтобы все, что было исчезало, а новое повлялось

23 Май, 23:11 #38 #752108

>>752105
блят, не дописал. короче, во первых, посмотри в файле %название формы%.designer в регионе generated by windows или как там мать его добавляются элементы. там они добавляются в свойство Controls у формы посредством this.Controls.Add(anyControlName);
помимо этого нужно создать собсна сам объект, например
Button B = new Button();
и потом ещё что то делается, до того, как закинуть новый контрол в контрол формы. то ли размеры задаются, то ли местоположение. это лучше посмотреть как раз таки в designer'e. он генерируется автоматически для каждой формы.

Ответы>>752117

33 Кб, 1024x768

23 Май, 23:16 #39 #752116

Программач,
Учусь по The C# Player's Guide.
Дошел до PART 4: Advanced Topics (Примерно половина книги).
Собственно, 2 вопроса:
1. Порекомендуй пожалуйста ресурс с упражнениями для ньюфажика моего уровня, если можно.
2. Где можно достать исходный код простенького бильярда или тенниса как на пике? Желательно бильярда.

Ответы>>752317>>752484>>753115

23 Май, 23:16 #40 #752117

>>752108
мдя. посмотрел у себя только что. создаёшь объект контрола (Button B = new Button();). прописываешь ему минимальные необходимые свойства (ну там размер, местоположение, текст), и потом в свойство самой формы Controls запихиваешь новый контрол типа this.Controls.Add(B);
вроде должно работать.
а насчёт удаления - попробуй подёргай методы того же this.Controls.Remove(); если там такие есть. в крайнем случае - хуячь всем контролам свойство Enabled=false;

4 Кб, 352x288

23 Май, 23:27 #41 #752133

Алгоритмический тупняк итт.

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

Как зделать проще?

Ответы>>752482

23 Май, 23:32 #42 #752142

>>752096
Накидай их сразу в десингер на форму и поставь Visible и Enabled в false, потом показывай когда нужно.

Можно еще TabControl заюзать и добавлять/удалять из него целые сверстаные Tab'ы.

24 Май, 01:51 #43 #752317

>>752116
Прошу прощения, бампану.

Ответы>>753115

24 Май, 04:50 #44 #752371

>>750130
Binding к свойствам других элементов, ну и кастомные конвертеры. Или behaviours.

24 Май, 10:33 #45 #752482

>>752133
тебе все же нужно решение, или таки алгоритм?

Ответы>>752497

24 Май, 10:36 #46 #752484

>>752116
codewars попробуй. Алсо, у тебя книга в электронном варианте? Если да, то скинь ссылочку.

16 Кб, 800x600

24 Май, 10:58 #47 #752497

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

Как-то все сложна-сложна. Гуглил какие-нибудь магические формулы для layuot solver'ов но не нашел ничего годного. Короч, пока забъю, но потом нужно будет сделать нормально.

Ответы>>752503

24 Май, 11:04 #48 #752503

>>752497
под решением я подразумевал использование WrapPanel из WPF (или того алгоритма, который использует он), но есть неуверенность по поводу возможности равномерного расстояния между элементами

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

Ответы>>752504

24 Май, 11:07 #49 #752504

>>752503
Лол, пик рандом в посте выше. Пик-пример на два поста выше.

Алсо, нет это не элементы WPF, готовы решения не пройдут!

Ответы>>752511

24 Май, 11:18 #50 #752511

>>752504
взять решарпером вскрыть эту панель и наковырять

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

в принципе, это все можно сделать без повторных проходов по таблице

24 Май, 13:03 #51 #752572

есть какой-нибудь пример реализации стейт-менеджера контента пользователей приложения?

из имеющегося у меня примера присутствует реализация на основе графа зависимостей. почему мне этот пример не нравится:
- при добавление пользователя/контента нужно добавлять ребра, соединяющий нового пользователя/контент со ВСЕМ/И контентом/пользователями
- такая модель немного хуевасто ложится на, например, задачу построения личных сообщений

Ответы>>752775

24 Май, 13:05 #52 #752573

Как добавить dll'ку к asp.net апликухе, если этой либы нет в нугете?

Ответы>>752574

24 Май, 13:06 #53 #752574

>>752573
references -> add reference -> browse

24 Май, 17:08 #54 #752775

>>752572
ну где ж вы, йобасиньорархитекты? неужто релизы этой ночью?

24 Май, 19:15 #55 #752908

https://geekbrains.ru/professions/microsoft_developer/#tab-probation

Котаны че скажете за курс? Стоит идти или наебалово?

Ответы>>752926

24 Май, 19:37 #56 #752926

>>752908
иди про джавараш почитай. суть одна и та же

Ответы>>752939

24 Май, 19:53 #57 #752939

>>752926
Не понял?

Ответы>>753207

70 Кб, 540x540

24 Май, 20:45 #58 #752971

>>749549 (OP)
>SharpDevelop - еще одна IDE для C#, отличается малым размером (около 20мб)
Я тут решил начать изучать кодинг с нуля, и соснул с оставшимся размером на диске C при установке Visual Studio.
Потому собственно вопрос, почему он весит настолько мало?
Что там не так? В общем буду учить по книгам и простым туториалам для новичков, мне эта штука при компиляции не будет выдавать Error huisasi?
Т.е. вписывая туда код из уроков, они будут воспроизводиться так же как на большой и тяжелой программе?

Ответы>>752987>>753045>>753979

24 Май, 21:00 #59 #752980

Привет аноны. Поделитесь, если у кого есть ссылкой на ответы к собеседованию по C# ? А то влом искать, а времени на подготовку в обрез.

Компания EPAM, вопросов около 30, начиная от Типов данных и заканчивая ADO.Net.

Ответы>>752989>>757008

24 Май, 21:03 #60 #752987

>>752971
VS - се есть мегамастадонт, который только кофе не готовит разве что. ванную, что эта 20сбайтовая дрочня представляет собой блокнот с компилятором

ошибки тебе пишет компилятор (или рантайм), в т.ч. и в студии. следовательно, вопрос поиска, в чем ошибка, на начальном уровне ставиться точно не будет

Ответы>>752999

24 Май, 21:04 #61 #752989

>>752980
вообще охуел

24 Май, 21:13 #62 #752999

>>752987
А Visual Studio Code в таком случае для чего? Оно тоже мало весит и компилирует? Мне его интерфейс больше нравится.

Ответы>>753019

24 Май, 21:24 #63 #753019

>>752999
https://www.visualstudio.com/en-us/downloads/visual-studio-next-downloads-vs.aspx
>Visual Studio "15" Preview 2 with new installer
Попробуй эту штуку, обещали что она маленькая-премаленькая и ставится за считанные минуты.

Ответы>>753032>>753186

100 Кб, 960x540

24 Май, 21:28 #64 #753032

>>753019
Хорошо, спасибо.

Ответы>>753042

24 Май, 21:31 #65 #753042

>>753032
И помни, фидбэк очен важен для нас!

Ответы>>753186

24 Май, 21:36 #66 #753045

>>752971
RIder можешь попробовать, типичная idea, но для шарпа. Еще и работает быстро

Ответы>>753201

24 Май, 22:16 #67 #753115

>>752116
>>752317
Здеся:
http://www.introprogramming.info/wp-content/uploads/2013/07/Books/CSharpEn/Fundamentals-of-Computer-Programming-with-CSharp-Nakov-eBook-v2013.pdf

Задачки хорошие, НО УПАСИ ГОСПОДЬ СМОТРЕТЬ НА ИХ РЕШЕНИЯ, это пиздэц.

24 Май, 23:31 #68 #753186

>>753042
>>753019
Тут все равно просит не менее 9 гб на всех хардах

144 Кб, 1280x720

24 Май, 23:42 #69 #753197

>>749549 (OP)
Сап, зекач.
Помогите, в чем трабл?

Ответы>>753198>>753214

24 Май, 23:46 #70 #753198

>>753197
Buttons сделай public

162 Кб, 1039x877

24 Май, 23:49 #71 #753201

>>753045
В общем установил ничего не меняя кроме диска C, и он мне такое вот говорит. Наверняка у меня чего-то не установлено? Я совсем дебил, просто скопировал код из урока.

Ответы>>753208>>753411>>753979>>754051

24 Май, 23:52 #72 #753207

>>752939
говно короч

24 Май, 23:53 #73 #753208

>>753201
у тебя нет фреймворк стоит?

Ответы>>753211

7 Кб, 662x19

24 Май, 23:55 #74 #753211

>>753208
Оно?

24 Май, 23:57 #75 #753214

>>753197
Это класс, как я его публик сделаю блядь?

Ответы>>753368

25 Май, 02:58 #76 #753317

Как же заебало - не могу найти помощника себе на WPF, в стартапик.

Деньги +- норм для рашки, но приходят одни Button1_Click ебланы.

Ответы>>753947>>756368

25 Май, 07:19 #77 #753368

>>753214
public class SykaBlyat

25 Май, 08:22 #78 #753411

>>753201
Версия (билд)?

Ответы>>753963

25 Май, 09:19 #79 #753442

Кто-нибудь знает где можно скачать
C# 6.0. Справочник. Полное описание языка на русском?

25 Май, 13:35 #80 #753574

Чики-чики, двощь-двощь.
Есть один асп.нет, нужно дернуть из текстбоксов несколько значений и внести их в некий шаблон (.dotx, .rtf или pdf) и сохранить/распечатать. Как это сделать без сторонних библиотек?
Насколько я прогуглил, с pdf это сделать нереально, с .dotx нереально на серверной стороне (а иначе и не нужно), остался rtf, но он мозгоёбит с utf-8.

Ответы>>753651

25 Май, 15:57 #81 #753651

>>753574
Чем стороние библы не угодили?

Ответы>>753770

25 Май, 17:36 #82 #753770

>>753651
Низя

Ответы>>753772

25 Май, 17:37 #83 #753772

>>753770
дизассемблируй стороннюю библиотеку и портируй полностью код с неё в свой говнопроект

Ответы>>753872

25 Май, 19:04 #84 #753872

>>753772
Сложна

25 Май, 20:15 #85 #753947

>>753317
что за стартап и что от помощника хочешь?

25 Май, 20:21 #86 #753955

Как в WPF через xaml используя <DataTriggers> ловить изменения какой либо переменной в программной части? Ну типа есть в коде переменная bool, и каждый раз когда ей присваивают true/false, может быть и повторно одно и то же значение, DataTrigger срабатывает и делает свои чорные дела? Читал, что нужно указывать в объявлении <DataTrigger> определённый Binding, типа
<DataTrigger Binding = "{Binding Path=%var_name%}" Value="True">
Однако, что мне нужно помимо этого? Реализовывать у класса INotifyPropertyChanged? Если да, то как реализовывать его члены?

Ответы>>754108>>755313

25 Май, 20:26 #87 #753963

>>753411
Версия чего?

Ответы>>753979>>753998

61 Кб, 727x370

25 Май, 20:40 #88 #753978

Как мне из RSACryptoServiceProvider достать закрытый ключ и сохранить его куда-нибудь в файл? Сохранение через контейнер происходит куда-то в системные папки, а мне нужно, чтобы я мог на разных компьютерах запускать приложение.
И ещё, как передать туда открытый ключ другого пользователя? Я так понял сами по себе там ключи не хранятся, а хранятся параметры из которых они вычисляются, такие как P, Q и т.д. Получается мне нужны все параметры другого пользователя, чтобы отправить ему сообщение?

Ответы>>754135

1554 Кб, 1200x898

25 Май, 20:41 #89 #753979

>>753963
>>753201
>>752971
В общем я не знаю что мне делать, на диске C осталось всего 2 гб, сам я профессионально занимаюсь графикой, тут овер миллиарды разных плагинов под еще один миллард программ, поэтому в скором времени еще не смогу полностью снести систему. И насколько я понимаю VS просит по 10+гб на всех дисках? Простой покупкой винта и установкой на него системы я не обойдусь, он в любом случае будет просить места сразу на всех? Любые инсталяторы с официального сайта VS просят так же много пространства на дисках. А эта программа выдает какую-то ошибку. Есть вообще какое-то решение этому всему?

Ответы>>753986>>754029

25 Май, 20:47 #90 #753986

>>753979
http://www.tutorialspoint.com/compile_csharp_online.php

Ответы>>753994

25 Май, 20:54 #91 #753994

>>753986
Знаю, в шапке тоже есть онлайн компиляторы, но хотелось бы именно стационарного.

Ответы>>754000>>754024

115 Кб, 630x403

25 Май, 20:58 #92 #753998

>>753963
>Версия чего?

Ответы>>754013

25 Май, 21:03 #93 #754000

>>753994
notepad++

55 Кб, 668x425

25 Май, 21:20 #94 #754013

>>753998

Ответы>>754049

25 Май, 21:32 #95 #754024

>>753994
SharpDevelop

25 Май, 21:36 #96 #754029

>>753979
перекинь на с место с другого диска, данные это не затронет

25 Май, 21:58 #97 #754049

>>754013
Скинь ссылку на примеры которые тестишь

Ответы>>754051

25 Май, 21:59 #98 #754051

>>754049

Да вот же
>>753201

Ответы>>754058

25 Май, 22:15 #99 #754058

>>754051
Вот таска на твою багу https://youtrack.jetbrains.com/issue/DEXP-104297
Жди когда пофиксят (пока не в работе) либо попробуй предыдущую версию.

Ответы>>754061

824 Кб, 1920x1200

25 Май, 22:19 #100 #754061

>>754058
Начинаю свой первый шаг и тут же спотыкаюсь и разбиваюсь нахуй насмерть.
Первый же хеллоуворлд выдает ошибку разработчика IDE/
Чувствую эта дорога будет сочной и колоритной.

Ответы>>754068

25 Май, 22:24 #101 #754068

>>754061
Где ты вообще взял этот билд, последний который они рассылали на почту был 1906 (и в их твитере он последний).
Может ты скачал что-то для внутреннего тестирования.

Попробуй 1906 http://download.jetbrains.com/resharper/riderRS-146.1906.exe

Ответы>>754075>>754081>>759097

25 Май, 22:30 #102 #754075

>>754068
Да вот как раз ссылка на почту и пришла на него, попробую этот, спасибо

Ответы>>754081

153 Кб, 463x660

25 Май, 22:34 #103 #754077

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

Вообще как свой уровень определить кстати? Я знаю синтаксис, читаю код, пишу простенькие программки на codewars не выше 5 кю, с легкостью прошел курс на курсере из оппоста, но понятие наследования до сих пор понимаю лишь смутно.

Ответы>>754105

25 Май, 22:38 #104 #754081

>>754075
>>754068
Оно еще и удаляться не хочет, процесс тупо виснет и всё. Бля.

25 Май, 23:18 #105 #754105

>>754077
по большому счету, можно начинать на что-то надеяться, если ты знаешь как применить ООП в языке (и что это такое), и будешь иметь представление о шаблонах проектирования (хотя бы смутно, на уровне "ну наверна это так") и, опять таки, как это должно выглядеть в рамках выбранного тобой языка.
конечно же надо знать фундаментальный базис платформы, т.е. писать хотя бы со второго раза компилируемый код

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

Ответы>>754120

25 Май, 23:20 #106 #754108

>>753955
Таки шота мой вопрос затерялся. Бамп.

25 Май, 23:37 #107 #754120

>>754105
Ммм, ладно, спасибо. Тогда задам вопрос по-другому: что мне надо наебнуть, чтобы быть готовым к C# джуниорству?

Ответы>>754343

25 Май, 23:54 #108 #754129

Посоны, поясните по харкору.
Устроился я в одну быдлофирму быдлокодером, что бы сопровождать их быдлокод. И и вот роясь в чужом коде закралась мысль. Правильно ли это, объявлять строковую константу в статическом методе или лучше инициализировать ее где то во вне и потом в методе только к ней обращаться? Особенно если метод вызывается примерно 50000 раз.

Ответы>>754291

25 Май, 23:59 #109 #754135

>>753978
string ToXmlString (bool includePrivateParameters)
void FromXmlString(string xmlString)

Ответы>>754289

39 Кб, 1411x210

26 Май, 07:05 #110 #754289

>>754135
Ну ок, получил я нечто такое (пик).
А как мне из этого получить открытый ключ, чтобы потом передать его собеседнику?

Ответы>>754323

26 Май, 07:10 #111 #754291

>>754129
Абсолютно похуй. Строковая константа должна находиться в пуле констант и на неё просто создаётся ссылка.

26 Май, 09:20 #112 #754323

>>754289
ToXmlString(false) - возвращает публичный ключ в формате XML
ToXmlString(true) - возвращает публичный + приватный ключ в виде XML

Сохраняешь полученную строку в файл/передаёшь по сетевому потоку своему собеседнику. Собеседник у себя выполняет выполняет FromXmlString(string xmlString) с твоим ключом - в результате его RSACryptoServiceProvider будет содержать такой же ключ, как у тебя.

Ответы>>754326

26 Май, 09:26 #113 #754326

>>754323
Это я понял, мне нужна возможность передать открытый ключ текстом, вида:
8yCy7vitENliJ6SHLQewbk04+ypF1B6QrprzbsLfJpTiX26RXzBLpDxj3jbrY1ZhRbYdXjj+IV9YcA/NcIiWSvl1CrU8Uc2w
Чтобы он мог на сайте увидеть эту строчку, выделить, скопировать в программу и все заработало.
Я так понял в RSA открытый ключ состоит из двух чисел, а вот на этом сайте http://crypt-online.narod.ru/crypts/rsa/ ключи генерируются как одно число. Вот мне так же надо.

Ответы>>754340

26 Май, 09:43 #114 #754340

>>754326
1. Можешь просто выдавать юзеру полученную XML строку - то что тебе нужно (скопировал, вставил, заработало) будет работать.
2. По твоей ссылке ключ приводят в формат кодирования Base64, можешь поискать как в него закодировать/декодировать строку.
3. Можешь ручками из полученного XML выдрать Modulus и Exponent, сложить их в одну строку, разделив, например, каким-нибудь спецсимволом (хотя насколько я помню, при одинаковой длине ключа длина получившейся строки всегда будет одинаковой, так что можно даже не разделять их спесимволом, а просто экспериментально узнать длину отдельных компонентов) и потом восстанавливать на клиенте.

26 Май, 09:51 #115 #754343

>>754120
Албахари Троелсена плюс паттерны на уровне википедии. по хардкору будут еще алгоритмы Кнута
это, имхо, всеобъемлющий набор

Ответы>>754426>>754512

26 Май, 12:21 #116 #754413

Антош, почему не работает BackgroundWorker?

using System;
using System.ComponentModel;
using System.Threading;

namespace ThreadExample
{
class Program
{
static void Main(string[] args)
{
BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += delegate(object sender, DoWorkEventArgs ea)
{
Console.WriteLine("ALLOU YOBA ETO TI?");
Thread.Sleep(1000);
};
Console.ReadLine();
}
}
}

Ответы>>754415>>754419

26 Май, 12:23 #117 #754415

>>754413
Форматирование поехало, вот код:
https://ideone.com/YmBDSh

26 Май, 12:27 #118 #754419

>>754413
ты его не запустил

26 Май, 12:50 #119 #754426

>>754343
Добавлю, что Троелсен для начинающих лучше.

26 Май, 13:13 #120 #754435

Синглтон, Фабрика, Сттратегия
На пальцах ноги объясните что это такое, как использовать и зачем это мне нужно? Спасибки

Ответы>>754444>>754449

26 Май, 13:21 #121 #754444

>>754435
википедия шонебуть пишет по этому поводу?

Ответы>>754467

26 Май, 13:24 #122 #754449

>>754435
/summon "Gang of Four"

26 Май, 13:41 #123 #754467

>>754444
Ты мне на своем опыте объясни, а не в википедию тыкай :3

Ответы>>754471

26 Май, 13:45 #124 #754471

>>754467
возможно, ты думаешь, что я напишу нечто отличное от того, что ты можешь найти в книгах или статьях, но это не так

256 Кб, 1366x768

26 Май, 14:16 #125 #754496

>>749549 (OP)
Друзья, подскажите пожалуйста, почему он ругается?

Ответы>>754523

53 Кб, 474x595

26 Май, 14:32 #126 #754512

>>754343
Спасибо. Однажды я стану великим, и ты сможешь смело сказать что помог мне.

26 Май, 14:41 #127 #754523

>>754496
Блять, у тебя в тексте написано, NullReferenceException. Неужели ты такой тупой? У тебя cell = null.

Ответы>>754546>>754631

26 Май, 15:10 #128 #754546

>>754523
Как сравнивать переменные - дженерики через бинарные операторы а не методы типа Equals, isEqual и т.д.? Что реализовывать и как?

Ответы>>754583>>754834

26 Май, 15:45 #129 #754583

>>754546
public static bool operator ==(Hui<T> h1, Hui<T> h2)

Ответы>>754600

26 Май, 16:17 #130 #754600

>>754583
И в каком классе мне переопределять оператор?

Ответы>>754603

26 Май, 16:24 #131 #754603

>>754600
в любом, в каком получится

Ответы>>754605

5 Кб, 200x123

26 Май, 16:28 #132 #754605

>>754603
Очень смешно.

Ответы>>754607

26 Май, 16:33 #133 #754607

>>754605
хз, чо смишнова

26 Май, 16:54 #134 #754631

>>754523
>>754523
Я не мог понять, в какой именно переменной нуль.
Спасибо.

Ответы>>754832

20 Кб, 1000x1000

26 Май, 19:19 #135 #754781

Шарпач, у меня проблема. Я студент, подрабатывающий автоматизатором(автотесты на C#). Я более-менее знаком с языком/опп/паттернами и у меня есть желание после института заниматься разработкой или автоматизацией тестирования. Проблема в том, что я не умею в науку(что-то вроде теории множеств, теории категорий, конечных автоматов и тд.). Как самостоятельно изучить эти серьезные серьезности? Если что, я не собираюсь заниматься научной работой после института, но мне хотелось бы знать достаточно для работы в каком-нибудь там акронисе или касперски лабе.

Ответы>>754911

26 Май, 20:32 #136 #754832

>>754631
тащемта, по событию у тебя также отвалится приложение из-за nullreference

26 Май, 20:37 #137 #754834

>>754546
IComparable реализуй.

Ответы>>754840

26 Май, 20:47 #138 #754840

>>754834
Да реализовал уже. Как я понял, нет способа шаблонные переменные через операторы типа < >
сравнивать, даже если у структур перегружены эти операторы? только CompareTo, isEqual и что ещё сам придумаю, но не операторы?

Ответы>>754850

26 Май, 20:54 #139 #754850

>>754840
што

Ответы>>754853

26 Май, 20:57 #140 #754853

>>754850
што што. грю, переменные шаблонного типа можно сравнивать операторами, блять, вот этими: <, >?
или только указывать после объявления сигнатуры метода
where T:IComparable
и использовать CompareTo
или может быть есть всё таки способ использовать именно операторы?
знаю, что == можно реализовать, если указать
where T:Class, ну и в классах соответствующих надо == переопределить и Equals(). интересуют именно < и >

Ответы>>754887>>755183

26 Май, 21:28 #141 #754887

>>754853
Чисто технически - можно, но пользы от этого - нихуя.
https://dotnetfiddle.net/qXTScc

Ответы>>754890

26 Май, 21:29 #142 #754890

>>754887
Хуёвая тема, привязка к одному классу.

Ответы>>754892

26 Май, 21:31 #143 #754892

>>754890
Операторы должны быть static методами, static методы не могут быть в интерфейсах - никакого сравнения интерфейсов через операторы.
С другой стороны, у нас же ООП, идите нахуй со своими операторами, и пишешь классы, и оверрайдишь им методы.

Ответы>>754897

26 Май, 21:34 #144 #754897

>>754892
Время больше тратится на вызов метода, чем на использование оператора, нет?

Ответы>>754900>>754927

26 Май, 21:36 #145 #754900

>>754897
А хотя вот тут я задумался, от ситуации же зависит. Побитовое сравнение естессно быстрее оператором, чем вызовом метода. А в случае с ссылочными типами, один хуй же при использовании оператора вызываются методы, определённые либо у object'a, либо переопределённые в самом классе, и тогда разницы уже не так и много?

Ответы>>754964

26 Май, 21:40 #146 #754911

>>754781
>Проблема в том, что я не умею в науку(что-то вроде теории множеств, теории категорий, конечных автоматов и тд.).
Это хуета для чсвшного быдла, не засирай этим мозги, прибереги их для чего-нибудь более полезного.

Ответы>>754962

26 Май, 21:49 #147 #754927

>>754897
Не. Для сравнения однохуйственно.

26 Май, 22:25 #148 #754962

>>754911
>Это хуета для чсвшного быдла
Ну хз, обычно я слышу эти словосочетания от опытных коллег. Они, в отличие от меня, занимаются сложными задачами, а не чистят legacy говнокод вилкой. Хочу иметь хотя бы какое-то представление, а то совсем дауном себя чувствую.

55 Кб, 618x224

10 Кб, 374x244

8 Кб, 331x239

26 Май, 22:27 #149 #754964

>>754900
на втором пике A - struct
ООП жи, операторы нинужны и сахарок. Если ты сам переопределяешь операторы - разницы то и нет, вот с интами повеселее, но это похоже оптимизации уровня компилятора.

27 Май, 08:34 #150 #755124

Как в Idenity удалить лишнюю инфу в модели пользователя, типа номера телефона, которые создаются по умолчанию

Ответы>>755183

217 Кб, 1366x768

27 Май, 08:56 #151 #755129

Ребята, как посмотреть почему невозможно запустить службу? Свойств там никаких нет.

Ответы>>755415

27 Май, 10:57 #152 #755183

>>754853
по твоему, переопределить оператор == это можно, а >/< это сложна и ваще надо написать что-то сверхъестественное?

>>755124
реализовать своего IUser<T>

Ответы>>755184

27 Май, 10:59 #153 #755184

>>755183
Ты не понял, единственные операторы сравнения, применимые к дженерикам - == и !=, и то, если в сигнатуре метода указать, что шаблонный тип - ссылочный тип: where T:class

Ответы>>755187>>755193

27 Май, 11:13 #154 #755187

>>755184
да ну
https://dotnetfiddle.net/tpJkDz

Ответы>>755189

27 Май, 11:18 #155 #755189

>>755187
Ёпта, я про другую ситуацию говорю, вот: https://dotnetfiddle.net/hyoate

27 Май, 11:23 #156 #755193

>>755184
В следующий раз, чтобы не путать людишек, указывай явно, generic types или generic type parameters, спасибо.

27 Май, 11:31 #157 #755195

Помогите с одним вопросом, недавно спрашивали на собеседовании:
Есть класс Person со свойством Name, от которого унаследованы 2 класса: Doctor и Patient. Какая есть логическая ошибка и как её исправить, если Doctor заболеет?

Ответы>>755199>>755202>>755204>>755210

27 Май, 11:35 #158 #755199

>>755195
И чё, это весь вопрос? Звучит бредово. Зависит же от того, как объекты этих классов используются.

Ответы>>755203

27 Май, 11:38 #159 #755202

>>755195
Чел ты явно что-то не договариваешь.
Мы же не были на твоем собеседование и не знаем контекста.

Ответы>>755203>>755205

27 Май, 11:39 #160 #755203

>>755199
>>755202
Да, весь вопрос, сам немного не понял смысла. Ошибка, как мне сказали в том, что свойство Name продублируется и надо как-то исправить это

Ответы>>755208

27 Май, 11:40 #161 #755204

>>755195
выделить интерфейс пациента с доктором шоле?

Ответы>>755206

27 Май, 11:40 #162 #755205

>>755202
И еще, когда есть список Persons с разными Doctor и Patient, то все нормально, но как только Doctor заболел - возникает логическая ошибка

27 Май, 11:41 #163 #755206

>>755204
хз

27 Май, 11:41 #164 #755208

>>755203
Что программно делают с объектом доктора, если он заболеет?

Ответы>>755211

27 Май, 11:47 #165 #755210

>>755195
abstract class Person
{
string Name {get;set;}
}

class Doctor : Person
{
string Speciality {get;set;}
...Methods and properties...
}

class Pathient : Person
{
string Diagnosis {get;set;}
...Methods and properties...
}

var doctor = new Doctor
{
Name = "Doctor1",
Spec = "Spec1"
};

var patient = new Patient
{
Name = "Patient1",
Diagnosis = "Diagnos1"
}

var goodList = new List<Person>{doctor, patient};

var doctPatient = new Patient
{
Name = "Doctor1",
Diagnosis = "Diagnos"
}

var badList = new List<Person>{doctor, doctPatient};

В общем как то так.

27 Май, 11:48 #166 #755211

>>755208
Создают инстанс Patient, с таким же Name, как и у Doctor

27 Май, 15:57 #167 #755313

>>753955
bump Q

Ответы>>755317

27 Май, 16:09 #168 #755317

>>755313
я, возможно, скажу глупость, но такой подход это дерьмо. создай модель для твоего окна и протаскивай все изменения переменной через проперти этой модели

Ответы>>755319

27 Май, 16:25 #169 #755319

>>755317
Я в wpf совсем недавно.
>создай модель для твоего окна и протаскивай все изменения переменной через проперти этой модели
Вот это чо значит? Ты имеешь ввиду, типа сделать где нибудь label, который не будет отрисовываться на окне, и в него я записываю данные из программной части (view model или как там мать его), и считываю data-trigger'ом?

Ответы>>755323

27 Май, 16:29 #170 #755323

>>755319
чет каша в голове у тебя
просто прочитай про binding, любой простейший пример должен дать тебе 100% понимание в этом вопросе

Ответы>>755324

27 Май, 16:29 #171 #755324

>>755323
Не посоветуешь особенно годную статью?

Ответы>>755330

27 Май, 16:38 #172 #755330

>>755324
http://professorweb.ru/my/WPF/binding_and_styles_WPF/level8/8_6.php

http://metanit.com/sharp/wpf/11.php

https://msdn.microsoft.com/ru-ru/library/ms752347(v=vs.110).aspx
тут довольно подробно

на инглише сам ищи

Ответы>>755331

27 Май, 16:39 #173 #755331

>>755330
спс

есь хто из глобаллоджика? 27 Май, 17:54 #174 #755388

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

Ответы>>755494

27 Май, 18:44 #175 #755415

>>755129
В журнал событий Windows смотрел? Насколько я помню, необработанные исключения от сервисов летят туда.

Ответы>>755528

27 Май, 20:59 #176 #755494

>>755388
нахуй тебе это говно???
Будь мужиком, работай на заводе

Ответы>>755503>>756774

27 Май, 21:24 #177 #755503

>>755494
дык я итак три года потратил на это говно

27 Май, 21:28 #178 #755509

Прочитал я, значт, про binding в WPF. Всё бы хорошо, но вот чего я так и не понял: допустим, есть у меня controlTemplate, внутри него объявлен DataTrigger. Как установить этот DataTrigger на объект, объявленный в xaml'e в ресурсах окна/страницы типа
<local:myOwnType x:key = "QWE" Value = "False" />
где myOwnType - класс, реализующий соответствующим образом INotifyPropertyChanged
?
Пытаюсь сделать что то типа
<DataTrigger Binding = "{<-- вот что здесь то писать для связки с QWE?-->"} Value = "True">
...
</DataTrigger>
объект QWE периодически изменяется в C#-коде (ViewModel оно называется или как?)

Ответы>>755517>>755518>>756248

27 Май, 21:35 #179 #755517

>>755509
зачем ты используешь DataTrigger?

Ответы>>755518

27 Май, 21:37 #180 #755518

>>755509
upd
Попытался в самом ControlTemplate поместить в его ресурсы
<ControlTemplate.Resources>
</ControlTemplate.Resources>
>>755517
Мне нужно, чтобы визуальный интерфейс реагировал на изменение одной переменной. Если конкретно - нужно сделать так: по нажатию кнопки проверяется определённое условие. В зависимости от результата проверки, меняется булевая переменная и происходит либо одно, либо другое действие (анимация в моём случае). Именно эту булевую переменную я и хочу скормить дата триггеру.

Ответы>>755521>>755532>>756248

27 Май, 21:40 #181 #755521

>>755518
блят, upd не дописал. Пытаюсь короче поместить внутрь ресурсов контрол темлейта
<local:myOwnType x:key = "QWE" Value = "False" />
и уже у контрола изменяю эту переменную таким образом:
((myOwnType)myOwnControl.Template.Resources["QWE"]).Value = true, всё равно ноль реакции, хотя свойство это меняется. У дата триггера прописал
<DataTrigger Binding = "{Binding ElementName = QWE NotifyOnUpdate = "True"} Value = "True"" >

Ответы>>756248

27 Май, 21:51 #182 #755528

>>755415
Нет еще. Доберусь посмотрю, спасибо. А то я совсем не знал, что делать.

27 Май, 21:55 #183 #755532

>>755518
http://stackoverflow.com/a/6221552
тут ребята советуют использовать EventTrigger вместо Data~

Ответы>>755567

27 Май, 22:41 #184 #755567

>>755532
А вот здесь
<EventTrigger RoutedEvent="Binding.TargetUpdated">
Событие Binding.TargetUpdated - это событие в классе, который я сам пишу и который реализует (или в случае event trigger уже не важно) INotifyOnPropertyChanged? И как мне тогда прикрутить объект моего типа?

Ответы>>755579

27 Май, 22:58 #185 #755579

>>755567
нет, TargetUpdated - событие, которое возникает при любом обновлении свойств контекста элемента, связанных с этим самым элементом
https://msdn.microsoft.com/en-us/library/system.windows.frameworkelement.targetupdated(v=vs.110).aspx

другими словами, это механизм, который позволит контролу(!) узнать о том, что какое-то забинденное на него свойство изменилось

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

27 Май, 23:16 #186 #755584

Ребят, у меня пиздец.
Создается в формочке массив кнопок.
И мне надо шоб при нажимании на них в мэйне что-то происходило.
К событию Кнопачка.Клик можно += только метод с параметрами (object sender, EventArgs e).
Но мне требуется, чтоб при нажатии я мог воздействовать на один определенный объект. Но как его туда впихнуть? При += метода к событию никакие параметры указать нельзя, следовательно нихуя я туда не запихаю.
Что делать-та?

Ответы>>755585>>755786

27 Май, 23:17 #187 #755585

>>755584
Где объект то лежит?

Ответы>>755587

27 Май, 23:19 #188 #755587

>>755585
Его экземпляры объявлены в мэйне

Ответы>>755593

27 Май, 23:25 #189 #755593

>>755587
В форму его передай, и в своих хэндлерах this.Yoba.call(new Peka()). Или синглтон, или сервис локатор, или другие плохие практики

Ответы>>755755

28 Кб, 852x434

29 Кб, 850x430

27 Кб, 845x431

28 Май, 08:51 #190 #755745

Пытаюсь получить большое случайное число, для этого создаю массив byte, заполняю его случайными числами, а затем передаю в конструктор BigInteger. Однако иногда создается два BigInteger, иногда один, а может вообще ни одного. При этом массив byte создается и заполняется всегда. В чем может быть проблема?

Ответы>>755767

28 Май, 09:30 #191 #755755

>>755593
Но из формы нельзя воздействовать на объект в мэйне.

Ответы>>755767

28 Май, 10:11 #192 #755767

>>755745
Покажи третью то колонку, где Type
>>755755
Почему?

Ответы>>755810

28 Май, 10:49 #193 #755786

>>755584
Работай с объектами в мэйне не напрямую, а через вызовы методов, ебта. Я полагаю у тебя есть какая-то логика для определения, какая кнопка что делает, передавай это в метод. Опционально можешь результат вернуть и уже с формой что-то делай.

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

Ответы>>755835

28 Май, 10:49 #194 #755787

Аноны, поясните за делегаты по хардкору. Посмотрел + прочитал уже дохуя всего, но понимание до сих пор отсутствует. Как я себе это сейчас представляю-ссылка на функцию с определённой сигнатурой. Хотелось бы вкурить это до конца

Ответы>>755790

28 Май, 10:50 #195 #755790

>>755787
Так это ссылка на функцию с определнной сигнатурой.

Ответы>>755798

28 Май, 11:05 #196 #755798

>>755790
Спасибо

17 Кб, 943x163

18 Кб, 941x186

28 Май, 11:19 #197 #755810

>>755767

Ответы>>755813

18 Кб, 943x163

28 Май, 11:29 #198 #755813

>>755810
Ага, наебать меня решил?

Ответы>>755817

20 Кб, 941x186

28 Май, 11:35 #199 #755817

>>755813
Где зеленым обведено, там число есть, где красным — его нет. Мне нужно чтобы всегда оба числа появлялись.

Ответы>>755819

28 Май, 11:42 #200 #755819

>>755817
У тебя и в b написано, что там эbyte[128]э, а на самом деле там массив из 128 байтов

Ответы>>755823

28 Май, 11:55 #201 #755823

>>755819
Ты меня тролишь? На скрине в p нету числа, он мне Exception выкидывает, когда я пытаюсь его использовать. Когда оно нормально инициализируется, Exception, а нет.

Ответы>>755827

28 Май, 11:58 #202 #755827

>>755823
Ну так, немношк. Про exception ты ничего не говорил, и даже сейчас ты не говоришь что за ошибка.
>посоны, у меня чет не работает, помогайте блядь
Попробуй число в консольку вывести.

Ответы>>755830

48 Кб, 1656x528

28 Май, 12:09 #203 #755830

>>755827
Вот Exception, а вылетает он, потому что D не инициализировано. Как я уже сказал, процесс этот случайный, иногда D инициализируется нормально и программа работает без вылетов.

Ответы>>755836>>755843

28 Май, 12:19 #204 #755835

>>755786
У меня есть массив кнопок в форме. Есть такого же размера массив объектов, который я создаю в мэйне. В этих объектах есть метод, который вызывается при нажатии на кнопку. Ради простоты задачи пусть будет так, чтоб кнопка удалялась после нажатия. Для этого в вызываемый по событию метод нужно через ref засунуть эту самую форму и координаты кноаки в массиве и внутри метода удалить данную кнопку.
Но если запись такова:
муформ.кнопочка[и, ж].Клик += обж1.метод_при_клике;
В этой записи нельщя передавать никаких параметров методу метод_при_клике. А мне надо передать и экземпляр формы, и переменные и и ж, чтоб метод знал какую кнопку удалить.
Сам метод записывается в своем классе так:
воид метод_при_клике(обжект сендер, эвентАргс е){}
Если еще параметры добавить, то их все равно нельзя запихать.
Я придумал сделать так, чтобы внутри этого метода изменялась переменная буул внутри данного класса, а потом из мейна в цикле, проверяющем все экземпляры этого объекта при таком-то значении этой переменной удалялась данная кнопка. Работает.
Но это такая убогая и кривая реализация. Плюс программа будет усложняться далее - и что, мне лепить еще миллионы циклов внутри циклов чтоб вконец запутаться в этом клубке кода? Хотелось бы более красиво это реализовать.

Ответы>>755852

28 Май, 12:23 #205 #755836

>>755830
Ошибка у тебя в ModPow, а тебе надо разобраться почему D не инициализируется, посмотри при каком b оно так себя ведет.

16 Кб, 867x92

28 Май, 12:29 #206 #755843

>>755830
Вот где D == 0 - это говно, проверять надо на D < 0.

Ответы>>755868

180 Кб, 459x597

28 Май, 12:41 #207 #755849

Поясните мне вот какую вещь. Есть допустим у меня несколько контролов в контролах в контролах. И обращение к ним выглядит примерно как Control.Control.Control.Control.Label.Text

Если я создам переменную var s = Control.Control.Control.Control
И буду потом все это херачить через нее как s.Label.Text
Будет ли это правильно с точки зрения оптимизации? Чисто теоретимчески. Переменная будет потом заменена на полную конструкцию или компилятор ее реально создаст и она будет занимать память вот беда то?

Ответы>>755853

28 Май, 12:45 #208 #755852

>>755835
>и внутри метода удалить данную кнопку
Это максимум говно, метод модели не должен знать ни о какой форме, ему похуй вообще на твою форму, понимаешь? Его это ебать не должно.
Форма, напротив, должна знать о модели твой массив объектов в данном случае, потому что она является отображением этой самой модели, один объект -> одна кнопка.
Передаешь массив объектов в твою форму и записываешь в private field, рисуешь кнопки относительно этого массива. В каждую кнопку записываешь ее координаты в Tag там или куда еще, в хэндлере кнопки твой массив уже есть в приватном поле, удалаешь свой объект по координатам из этого массива и перерисовываешь, например, кнопки относительно новой измененной модели.

Ответы>>755893

28 Май, 12:47 #209 #755853

>>755849
Так тебе по времени или по памяти оптимизировать? Ссылка то на объект будет занимать совсем чуть-чуть твоей драгоценной памяти, а время доступа к свойству ускорится пропорционально вложенности контрола.

Ответы>>755854>>755870

28 Май, 12:48 #210 #755854

>>755853
>время
>ускорится
Хуйню какую-то написал, скорость увеличится

10 Кб, 571x157

28 Май, 13:10 #211 #755868

>>755843
Так вот оно что, он последний байт как знак определяет, понял, спасибо.
Решил проблему с помощью этого кода (пик). Правда не понятно, что такое 0x80.

Ответы>>755871>>755873

46 Кб, 600x560

28 Май, 13:22 #212 #755869

Начинающий код манки репортинг ин
Есть 3 класса: логгер, адресная книга и юзер. Есть 3 паттерна: сингтон, стратегия, фабрика. Правильно ли под логгер кинуть стратегию для записи в разные источники, синлтон на книгу(коллекция юзеров с ивентами)? Непонятки с фабрикой. Так как у нас один тип юзеров фабрику использовать нецелесообразно

Ответы>>755938

28 Май, 13:22 #213 #755870

>>755853
Я вообще интересуюсь. Просто столкнулся сейчас с такими длинными конструкциями и появилось желание сделать как в sql. Там просто хуячишь
select * from AddrTradePromoItem a
и потом ко всем колонкам можно обращаться через это самое a. Просто пишешь a.ID, a.Item и т.п. И вот подумалось как бы так провернуть в шарпе. Но нагуглил только создать переменную и хранить в ней ни то указатель, ни то сам объект. наверное все же упор на скорость, т.к. эта херь должна в цыкле отображать выборку и БД. А там от 10 до 100к записей.

Ответы>>755875

28 Май, 13:24 #214 #755871

>>755868
> Правда не понятно, что такое 0x80.
Это число в hex формате. А 16-ричной системе иными словами.

1 Кб, 112x111

28 Май, 13:29 #215 #755873

>>755868
>и это программисты
Так берется highest order bit, берется он у последнего байта, потому что конструктор ждет байты в little-endian порядке.
Так как у тебя случайные байты берутся, тебе код с твоего пика не нужен, ты можешь просто нулевой байт в конец массива добавить.

Ответы>>755882

28 Май, 13:32 #216 #755875

>>755870
>в sql
Там это просто alias, не имеет отношения к выполнению.
>100к
Paging.

Ответы>>755876

28 Май, 13:35 #217 #755876

>>755875
> Там это просто alias
А в шарпе такое есть?

Ответы>>755883

28 Май, 13:41 #218 #755882

>>755873
Понял, спасибо.

28 Май, 13:41 #219 #755883

>>755876
Нет, можешь просто записывать в переменную как ты и нагуглил. Но вообще, ты оптимизируешь то, что оптимизировать не нужно.

Ответы>>755888

28 Май, 13:47 #220 #755888

>>755883
Я просто в шарпе не очень. Просто нужно оптимизировать одну прогу, оставшуюсю от прошлого сотрудника. А там на сколько я могу судить пиздец полнейший. Начиная с того, что делается пара тысяч апдейтов в цикле и открытие с закрытием соеденения тоже в цикле происходит. Из-за чего на каждый апдейт уходит по 2 секунды. В общем решил немного подтянуть знания в процессе разбора чужого кода.

Ответы>>755890>>756774

28 Май, 13:50 #221 #755890

>>755888
>пара тысяч апдейтов в цикле и открытие с закрытием соеденения
Looks like pora perepisivat'

28 Май, 13:53 #222 #755893

>>755852
Тогда все равно нужно будет выгружать массив из формы в мэйн, там с ним оперировать и загружать обратно.
Смешно, но я делаю "сапер". Кнопки о которых говорю - это ячейки игрового поля. При первом нажатии распределяются мины и при каждом открывается клеточка, и если там не мина и клетка не граничит с миной - запускается алгоритм поиска, который открывает незаминированное поле вокруг нажатой ячейеи.
Вот проблема в том как проще и адекватнее привязать кнопки к этому алгоритму. Пока что в цикле чекается просто каждый экземпляр объекта с информацией о ячейке, и если переменная было_нажато == тру, то он делает все последующие операции.
Кнопки я не в ручную расставлял, а генерировал циклом.
Для инфы о ячейках создал отдельный класс, где указаны все параметры клетки и методы, оперирующие с ней при нажатии. А так же генератор случайной расстановки бомб.

Ответы>>755905>>755906>>755943

28 Май, 14:02 #223 #755905

>>755893
Нахуй ты его в main вообще создаешь? Он у тебя шарится между формами?
Ячейка поля не должна рулить всем полем она охуела штоле в конце концов?, напиши менеджер поля, с методом OpenCell например, который будет рулить самой игрой, открывать нужные ячейки, завершать и игру и что-нибудь еще, ячейки же просто будут хранить состояние - открыта/закрыта и есть ли в ней мина.

Ответы>>755907

28 Май, 14:02 #224 #755906

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

28 Май, 14:04 #225 #755907

>>755905
У меня это в отдельном классе. Ты предлагаешь это их объявить в форме? Хм, а так же и правда удобнее.
А так мэйн работает как связующее между этим классом и формой. Согласен што хуево по сравнению с твоей идеей

Ответы>>755908

28 Май, 14:05 #226 #755908

>>755907
В форме ты просто делаешь _mineField = new MineField(10), и все поле у тебя есть - рисуй кнопки

Ответы>>755913

28 Май, 14:13 #227 #755913

>>755908
И что - весь код, работающий с полем, тоже придется пихать в форму.
В моем представлении в форме не должно быть много кода, все ядро должно быть в мэйне.
Я не прав?

Ответы>>755914

28 Май, 14:16 #228 #755914

>>755913
Вот для этого напиши класс менеджера поля, который будет хранить поле и предоставлять методы для его изменения. А в форме сделаешь _mineFiledManager = new MineFieldManager(new MineField(8, 10))

Ответы>>755916

28 Май, 14:18 #229 #755916

>>755914
Или MineField представить тогда в виде структуры и просто объявить в MineFieldManager.

Ответы>>755921

28 Май, 14:21 #230 #755921

>>755916
Manager != Creator

Ответы>>755922

28 Май, 14:22 #231 #755922

>>755921
Думаешь, лучше разделить их?

Ответы>>755923

28 Май, 14:24 #232 #755923

>>755922
Да, иначе, когда ты будешь спрашивать пользователя какого размера поле он хочет и сколько там мин должно быть, тебе придется эти параметры передавть Manager'у, а его не его задача, у него свои могут настройки/параметры, например открывать ли соседние пустые клетки или пускай юзер сам их тыкает.

Ответы>>755928

28 Май, 14:33 #233 #755928

>>755923
А будто есть разница, как ему передавать - через конструктор, как указал ты, или объявляя в нем самом?

Ответы>>755932

28 Май, 14:37 #234 #755932

>>755928
Потом ты решишь что игру можно будет сохранять и загружать, и придется переписывать менеджер, хотя он тут вообще не причем

Ответы>>755936>>755937

sage 28 Май, 14:42 #235 #755936

>>755932
>не причем
ни при чем такого я не ожидал

Ответы>>755937

28 Май, 14:44 #236 #755937

>>755936
>>755932
Не обязательно. Конструктору менеджера можно передавать пользовательские настройкки, а он там внутри себя соберет его в поле.

Ответы>>755939

sage 28 Май, 14:45 #237 #755938

>>755869
Все три паттерна идут в логгер, он должен быть доступен из разных мест, поэтому синглтон, а куда писать и что писать внутри него решает фабрика стратегий, хехе.

Ответы>>755961>>756261>>756302>>756521

28 Май, 14:48 #238 #755939

>>755937
Вот загрузил ты поле из файла/с сервиса, какие пользовательские настройки ты отдашь в менеджер?

Ответы>>755940

28 Май, 14:49 #239 #755940

>>755939
Да, все равно отдельно поле надо создавать.
А смысл его пихать в менеджер.
Окей.

28 Май, 14:53 #240 #755943

>>755893
У тебя хуйня кака-то получается, остановись.
Я так понимаю, что у тебя форма рулит логикой, хотя она вообще ничем рулить не должна, кроме себя.
Анон правильно пишет, тебе нужен менеджер поля и вотэвар. Он что-то делает, а форма пусть реагирует на это.
Как вариант, раз у тебя винформс, можешь из менеджера запускать события со своей сигнатурой, подпишешься на них в форме и будешь рисовать то, что тебе нужно

Ответы>>755957>>755960

28 Май, 15:17 #241 #755957

>>755943
Так я так и сделал.
Но так можно сделать только корявым способом.

28 Май, 15:19 #242 #755960

>>755943
Логика должна реагировать на форму.
В форме нажимаешь кнопачку - должен мэйн это почувствовать как-то и среагировать, а потом из себя воздействовать на форму.
Но это неудобно просто-напросто.
Тот анон наоборот предлагает объявить поле и менаджпр в самой форме.

Ответы>>756826

28 Май, 15:20 #243 #755961

>>755938
> фабрика стратегий
Вут?

28 Май, 15:21 #244 #755962

Пол клиентов мутить через энам или клас?

Ответы>>755964

28 Май, 15:23 #245 #755964

>>755962
Через переменную бул. Мужики же тру.

Ответы>>755968>>755989

141 Кб, 800x560

28 Май, 15:26 #246 #755968

>>755964
> Мужики же тру

Ответы>>755970>>755997

28 Май, 15:27 #247 #755970

>>755968
Пусть у фемиблядей горит от твоего кода.

28 Май, 15:42 #248 #755989

>>755964
Тогда пол вообще не нужен, просто IsHumanBeing

Ответы>>756031

28 Май, 15:51 #249 #755997

>>755968
А чому они в шортах-то?

28 Май, 16:18 #250 #756031

>>755989
Да.

3 Кб, 358x273

28 Май, 16:21 #251 #756032

Дык, как мне использовать класс с файла class.cs project'a 15 в класс проджекта1 одного солюшена?

Ответы>>756038

28 Май, 16:30 #252 #756038

>>756032
Все разобрался, добавил клас в референс :/

28 Май, 17:15 #253 #756111

Анон, помоги крестовику. Нужно прикрутить интерфейс к моей либе. C# на уровне helloworld. Что почитать по WPF?

Ответы>>756220>>756324

28 Май, 18:46 #254 #756220

>>756111
Нахуй WPF. Пиши на винформочках.

Ответы>>756226>>756228

28 Май, 18:50 #255 #756226

>>756220
Ну хотелось бы именно с WPF разобраться. Да и XAML приглянулся.

28 Май, 18:52 #256 #756228

>>756220
> винформочках
некрофил, плез

Ответы>>756769

28 Май, 19:09 #257 #756248

Дроч, помогай. Я заебался.
Как в WPF сделать так, чтобы DataTrigger реагировал на изменение одной переменной, и где нужно размещать дата триггер и эту переменную? Имею ввиду, я делаю шаблон контрола, и мне показалось логичным разместить дата триггер в <controlTemplate>, а в его ресурсах создать объект класса, реализующий INotifyOnPropertyChanged. Не заработало. Попытался сделать <DataTemplate> и в его ресурсах разместить вышеупомянутый объект. Результат - хуй. Причём контролы, которые используют данные шаблоны (что ControlTemplate, что DataTemplate) видят и изменяют свойство, по которому я бы хотел заставить работать DataTrigger, но всё равно какая то хуйня и ничего не работает. Што делать то, блджад чтобы эта ёбаная сука уже завелась блять а то завёлся тут только я ебучий сука впф в рот его ебать мочалкой суки блять.

суть моей проблемы я уже расписывал вотута >>755518
>>755521
>>755509

Ответы>>756297>>756401

28 Май, 19:26 #258 #756261

>>755938
Примерчик бы ))

28 Май, 19:49 #259 #756297

>>756248
яште EventTrigger подсовывал, ну

Ответы>>756301

28 Май, 19:53 #260 #756301

>>756297
Дак он мне не зашёл, епта. Там для него нужно привязываться к существующему контролу, и этот контрол в дальнейшем должен привязываться к определённой переменной из класса, реализующего INotifyOnPropertyChanged. В моём случае мне не нужно лишнее звено в виде промежуточного контрола, ни один контрол не должен быть привязан к переменной, которую я хочу использовать в DataTrigger. Я хочу, чтобы во ViewModel был объект, который имеет свойство, которое при изменении дёргает дата триггер у ControlTemplate'a и стартует анимацию.

Ответы>>756303>>756401

28 Май, 19:54 #261 #756302

>>755938
Пили пример
Поставлю за тебя свечку завтра

Ответы>>756316

28 Май, 19:55 #262 #756303

>>756301
анимацию чего ты хочешь стартовать?

Ответы>>756313

28 Май, 19:59 #263 #756313

>>756303
изменения цветов GradientStop'ов, которыми залит Path, геометрия которого описана в ControlTemplate для кнопки.

Ответы>>756317>>756401

28 Май, 20:02 #264 #756316

>>756302
Еще и за твою матушку помолюсь и финансового процветания пожелаю

28 Май, 20:03 #265 #756317

>>756313
фактически анимация внутри кнопки?

Ответы>>756321

28 Май, 20:04 #266 #756318

Аноны, у кого-нибудь есть готовые простенькие игры типа пинг-понга, крестиков-ноликов, морского боя на WPF? Очень нужно, с меня сотни нефти.

Ответы>>756325>>756765

28 Май, 20:06 #267 #756321

>>756317
Если ты под этим имеешь ввиду, что только кнопка визуально изменяется в результате анимации - то да.

Ответы>>756325>>756401

28 Май, 20:08 #268 #756324

>>756111
Так что? Подскажете?

Ответы>>756327

28 Май, 20:09 #269 #756325

>>756318
все хотел морской бой на впф написать

>>756321
ну шо, низя прибиндить какое-нибудь свойство к твоей булевой параше и включить эвенттриггер?

Ответы>>756330

28 Май, 20:10 #270 #756327

>>756324
в шапке же

Ответы>>756328

28 Май, 20:11 #271 #756328

>>756327
Второй пост не увидел. Извините.

28 Май, 20:16 #272 #756330

>>756325
Да там уже не булевая параша, я её стринговой сделал, а то наткнулся на мнение, что для дата триггера ещё конвертер хуярить нужно. Как прибиндить свойство - я хз, ибо в ВПФ секу чуть менее, чем нихуя. Если я тебя правильно понял, ты предлагаешь к одному из компонентов ControlTemplate'a привязать свойство из класса, реализующего INotifyPropertyChanged, а затем этот компонент задействовать в EventTrigger? Если да, то текст значения свойства из класса нужно размещать в контент какого нибудь контрола → он где то да будет отображаться. Мне это не нужно.

Ответы>>756344>>756401

28 Май, 20:16 #273 #756331

В приватных филдах обязательно писать так: _филд ?

Ответы>>756335>>756757

28 Май, 20:19 #274 #756335

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

Ответы>>756339

28 Май, 20:23 #275 #756339

>>756335
А фигнюшка в стиле this.some = some , когда мы присваиваем параметр полю класса?

Ответы>>756342>>756597>>756832

28 Май, 20:27 #276 #756342

>>756339
Не понял, что именно ты имеешь ввиду? Типа нужен ли this.%field name%?

28 Май, 20:29 #277 #756344

>>756330
в методе конвертера возвращай null. пустое значение отображается никак

Ответы>>756358

28 Май, 20:45 #278 #756358

>>756344
либо же более адекватный вариант - реализовать свое DependepcyProperty для кнопки и привязаться к нему в EventTrigger

28 Май, 20:54 #279 #756364

Как сделать ивенты на добавления/ удаления елемента в стандартном листе, НЕ observablecollection?

Ответы>>756369

28 Май, 21:02 #280 #756368

>>753317
Даешь +- норм деньги - получаешь +- норм помощника.

28 Май, 21:02 #281 #756369

>>756364
в List<T> - никак, написать ток свою реализацию поверх этого типа

28 Май, 21:53 #282 #756401

>>756330
>>756321
>>756313
>>756301
>>756248

По мотивам этого говна. Нашёл, короче, решение. Вдруг кому понадобится - мне подошло решение вот отсюда с VisualStateManager
http://stackoverflow.com/a/28188008

29 Май, 00:57 #283 #756521

>>755938
Бамп примеру

29 Май, 01:47 #284 #756530

Анон, задали написать приложение, с использование Model View Controller. Есть какая нибудь гайдуха или учебник, чтобы плавно подвести к созданию такой вещи? Я в принципе понимаю как это сделать, но у меня это получится убого, хотелось бы круто, на событиях. А то изучая C# так к ним привыкнуть и не смог.

Ответы>>756594

50 Кб, 674x351

29 Май, 08:10 #285 #756580

Поставил Visual Studio 2015, она через каждые 5 секунд выдает такую хуйню. Как отключить этот ебучий VsHub?

Ответы>>756582

29 Май, 08:17 #286 #756582

>>756580
Пробовал советы отсюда:
http://stackoverflow.com/questions/31452435/how-do-i-disable-vshub-exe-in-the-system-tray?rq=1
Убрал все галки, какие там перечислены, не помогло нихуя. Если прибить это говно через диспетчер задач, то вскоре оно опять запускается.

29 Май, 09:23 #287 #756594

>>756530
Берешь, создаёшь новое мвц приложение в вижаке. Меняешь английский на русский. Профит.

29 Май, 09:36 #288 #756597

>>756339
Если параметр и поле имеют одинаковые имена, то при обращении без зыс компилятор расценит его как обращение к параметру метода.

29 Май, 15:05 #289 #756757

>>756331
По конвенции Android можно писать mфилд. Это правда Java, а не C#. Я называю поля просто филд (а свойства с большой буквы) и при присваивании this.name = name. Не нужен этот маразм.

29 Май, 15:11 #290 #756765

>>756318
Вот тут сапер на WPF нашелся:
https://wpfminesweeper.codeplex.com/

29 Май, 15:16 #291 #756769

>>756228
А что WPF у нас уже стал кроссплатформенным?

Ответы>>756776>>756778

29 Май, 15:23 #292 #756774

>>755494
Там вообще пиздец. Системами контроля версий никто пользоваться не умеет. Постоянно нужно решать задачи вроде >>755888, только и код еще написан на Delphi, Visual FoxPro или тому подобном говне.

Ответы>>756779

29 Май, 15:25 #293 #756776

>>756769
а формочки?

29 Май, 15:27 #294 #756778

>>756769
Пилю пару своих проектов с https://github.com/AvaloniaUI/Avalonia
Зависимость есть

29 Май, 15:30 #295 #756779

>>756774
помнится первый мой опыт внедрения EF в прожект пришелся на попытку построения статистики основываясь на значениях некой базы данных. так там все колонки были NULLable, а первичного ключа таблицы не имели вовсе. не стоит, я думаю, говорить про внешние ключи и зависимости таблиц, а тем более индексы и всявся. на мой вопрос "шоштакоето, пацаны, чо так хуевасто все?" мне ответили "ну так, потомушто могу"

29 Май, 17:07 #296 #756826

>>755960
Правильно это через вызовы делать. Определил интерфейс для клиентов, они уже сами пусть разбираются. А кто клиентом будет не важно вообще. Хоть диалог, хоть консолька, хоть сервис.

29 Май, 17:12 #297 #756832

>>756339
Можешь и так. Но _ короче и проще писать, чем this. перед каждым полем класса.

29 Май, 17:32 #298 #756845

Дващ, а дващ. Что происходит с объектами на одной странице в WPF, когда идёт переход на другую? Они остаются в памяти или ссылки на них удаляются, а мусорщик потом приберёт?

Ответы>>756860

29 Май, 17:50 #299 #756860

>>756845
Походу сам допёр. Раз событие Unloaded срабатывает, значт удаляется, так?

Ответы>>756885

29 Май, 18:15 #300 #756885

>>756860
https://msdn.microsoft.com/ru-ru/library/system.windows.frameworkelement.unloaded(v=vs.110).aspx
> FrameworkElement.Unloaded: Возникает при удалении элемента из дерева загруженных элементов

29 Май, 18:31 #301 #756900

Что скажете по поводу "Эндрю Стиллмен - Изучаем C# 3 изд."?

Ответы>>756905

29 Май, 18:37 #302 #756905

>>756900
почему бы просто не взять одну из предложенных в шапке книг?))

Ответы>>756921

29 Май, 18:44 #303 #756911

Анон, помоги, пожалуйста:
Реализовать структуру данных для хранения координат прямоугольника и вычисления его сторон (а также - наоборот - преобразование сторон + координаты левого нижнего угла в координаты углов). Также реализовать определение длины периметра и площади прямоугольника, длины диагонали. Можно подумать и о операциях поворота на заданный угол (хотя бы на 90, 180), сжатии, растяжении. Рисовать его необязательно - только расчеты.

Вот, что я написал, плюс ещё хранение и вывод в консоль. Сейчас не могу написать вывод координат вершин
[code lang="csharp"]
class Rectangle
{
private double width;
private double height;
private double degree;
private double x;
private double y;
public Rectangle(double x, double y, double width, double height, double degree)
{
this.x = x;
this.y = y;
this.width = width;
this.height = height;
this.degree = degree;
}
public double Width
{
get { return width; }
set { width = value; }
}
public double Height
{
get { return height; }
set { height = value; }
}
public double Degree
{
get { return degree; }
set { degree = value; }
}
public double X
{
get { return x; }
set { x = value; }
}
public double Y
{
get { return y; }
set { y = value; }
}
public double Perimeter
{
get { return (width + height) 2; }
set
{
double newwidth = (value) (width / ((width + height) 2));
double newheight = (value) (height / ((width + height) * 2));
width = newwidth;
height = newheight;
}
}
public double Diagonal
{
get { return Math.Sqrt(Math.Pow(width, 2) + Math.Pow(height, 2)); }
}
}
[/code]

Ответы>>756914

29 Май, 18:48 #304 #756914

>>756911
Как видишь я пошел с конца, в классе имеется запись нижнего левого угла + угла наклона
Я реализовал изменение периметра так, чтоб стороны изменялись пропорционально отношению этих самых сторон к старому периметру.
Растягивание и сжатие понятное дело и так есть.
Теперь нужно как-то найти координаты этих вершин имя угол наклона и размеры сторон

Ответы>>756944

29 Май, 18:54 #305 #756921

>>756905
потому что там скучная хуета и нужно использовать новый материал для ускорения процесса вхождения?))
(вхождения моего члена тебе в рот, я же просто хотел совета, остряк ебаный)

Ответы>>757032

29 Май, 19:08 #306 #756944

>>756914
Вот реализовал поиск координат, но теперь нужно как-то учесть отклонение этого самого прямоугольника, если его стороны не параллельны осям координат...
public double GetAngleX( int angle)
{
double posX = 0;
if (angle == 0)//левый нижний
{
posX = x;
}
else if(angle == 1)//левый верхний
{
posX = x;
}
else if (angle == 2)//правый верхний
{
posX = x + width;
}
else if (angle == 3)//правый нижний
{
posX = x + width;
}
return posX;
}
public double GetAngleY(int angle)
{
double posY = 0;
if (angle == 0)//левый нижний
{
posY = y;
}
else if (angle == 1)//левый верхний
{
posY = y + height;
}
else if (angle == 2)//правый верхний
{
posY = y + height;
}
else if (angle == 3)//правый нижний
{
posY = y;
}
return posY;
}

Ответы>>756947

29 Май, 19:10 #307 #756947

>>756944
Я так понимаю, теперь нужно координату этой точки повернуть вокруг её оси как-то

Ответы>>757000

5 Кб, 532x96

3 Кб, 228x165

C# ньюфаг 29 Май, 19:47 #308 #756986

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

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

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

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

5. Как написать запрос редактирующий полученные данные с метода?

6. Вообще есть ли какой-то мануал где самые основные запросы описаны?

Код моего контроллера https://ideone.com/UKrGyn
Название моей и строк - пик 2

Ответы>>756990>>757032

29 Май, 19:49 #309 #756990

>>756986
>Правильно ли вообще я делаю, что номер айдишника преобразовываю в строку сохраняю в куках

имеется ввиду, что пользуясь таким способом будет работать как надо?

29 Май, 20:00 #310 #757000

>>756947
Всё, спасибо, чтобы я без вас делал.
Нашел функцию поворота точки вокруг оси

29 Май, 20:06 #311 #757008

>>752980
Вбрось вопросы, пожалуйста.

29 Май, 20:23 #312 #757032

>>756986
ну веб-сервис на MVC, такое)

> куки просто не создаются
вроде бы как через this.Context.Response.Cookies.Set(new HttpCookie(CookieName, value));, не?

> пользуясь таким способом будет работать как надо
ну ачо бы и нет. ты отдаешь клиенту ID, потом он тебе следующим запросом эту ID обратно присылает

> как правильно написать запросы в бд, чтобы получить, к примеру, данные соответствующие айдишнику который я вытянул с кук
this.db.GovnoTable.SingleOrDefault(e => e.Id == int.Parse(this.Context.Request.Cookies.Get(CookieName).Value));

> запрос редактирующий полученные данные с метода
как-то не понятно немношк. т.е. ты запросом отправляешь некую модель, с помощью значений которой и айдишника в куках ты хочешь внести изменения в запись БД?

> самые основные запросы описаны
SQL/Web? какие запросы, чего ты хочешь-то?

>>756921
> там скучная хуета
> для ускорения процесса вхождения
примерами про уточек ты хочешь ускорить процесс понимания? нуок

Ответы>>757087>>757093>>757159

75 Кб, 1278x515

29 Май, 21:43 #313 #757087

>>757032
>вроде бы как через this.Context.Response.Cookies.Set(new HttpCookie(CookieName, value));, не?

заработало, правда без this.Context ну да ладно, главное, что работает, лол, спасибо, хотя и некоторые прошлые способы работали, я просто в глаза долбился

>this.db.GovnoTable.SingleOrDefault(e => e.Id == int.Parse(this.Context.Request.Cookies.Get(CookieName).Value));

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

И еще если эт исключение не страшное, то потом я передам student в представление. А как там уже вывести эти данные среди html кода

В индекс страницы у меня написано в начале @model IEnumerable < StudentList.Models.Student >, а потом я перебираю цикл var item in Model и уже вывожу @item.Value.

А в случае когда не будет массива, то как подключить модель и отобразить данные?

> запрос редактирующий полученные данные с метода
> не понятно
человек вводит данные, жмет на кнопку, запускается метод который получает эти данные и изменяет данные той строки где айдшиник тот который я вытянул с кук

> самые основные запросы описаны

ну я как заметил, здесь мы даже не писали запросы SQL запросы. Меня интересует синтаксис или примеры запроса типа как ты предоставил выше. this.db.GovnoTable.SingleOrDefault(e => e.Id == ...

Ответы>>757095

29 Май, 21:49 #314 #757090

Сап богоподобным, вопрос такой: имея базовые знания c# : дженерики, осн. классы, события и проч., понимание ООП и способы реализации на шарпе, представления о чистом коде(все это взято от курса компании Контур), небольшом опыте создания десктопов, и пары сайтов на Joomla, возможно ли найти работу/фриланс/сенсея для прокачки скила в веб приложениях (.ASP MVC) ? Где искать и куда тыкаться?
P.S. .ASP MVC выбран ибо все компании в моем городе куда я пытался устроиться junior присылали тех. задание с ASP

29 Май, 21:51 #315 #757093

>>757032
>но уже при работе вылезает исключение пикрелейтед.

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

Ответы>>757095

29 Май, 21:58 #316 #757095

>>757087
> int.Parse(this.Context.Request.Cookies.Get(CookieName).Value
о, ну тут я загнался, LINQ не сможет транслировать этот вызов в SQL, следовательно, тебе надо объявить переменную с ID и ее использовать уже в SingleOrDefault
var id = int.Parse(this.Context.Request.Cookies.Get(CookieName).Value);
this.db.GovnoTable.SingleOrDefault(e => e.Id == id);

> в случае когда не будет массива
а что будет? в смысле, как так может получиться, что у тебя не будет данных?

> запускается метод который получает эти данные и изменяет данные той строки где айдшиник тот который я вытянул с кук

[HttpPost]
public ActinoResult Edit(SomeGovnoModel model)
{
if (!this.ModelState.IsValid)
{ throw new HuiPizdaException(); }

> var id = int.Parse(this.Context.Request.Cookies.Get(CookieName).Value);
> var entity = this.db.GovnoTable.SingleOrDefault(e => e.Id == id);
entity.SomeProp = model.SomeProp;
entity.SomeProp1 = model.SomeProp1;
entity.SomeProp_1 = model.SomeProp_1;
this.db.SaveChanges();

return null;
}

> Меня интересует синтаксис или примеры запроса типа как ты предоставил выше. this.db.GovnoTable.SingleOrDefault(e => e.Id == ...
SELECT t.[Property], t.[Property_1] FROM Table AS t WHERE t.Id = @id
вообще, любая книга по SQL пойдет. или википедия или T-SQL в MSDN

>>757093
> как вывести это в представлении
ну ты ж сам написал, што:
> В индекс страницы у меня написано в начале @model IEnumerable < StudentList.Models.Student >, а потом я перебираю цикл var item in Model и уже вывожу @item.Value.
передается во вью твой энумерабл через return this.View(studentotaList) в ActinoResult методе (Index по сути)

Ответы>>757117

29 Май, 22:22 #317 #757117

>>757095
>передается во вью твой энумерабл через return this.View(studentotaList) в ActinoResult методе (Index по сути)

заработало с @Model.Name, это я тупил.

>entity.SomeProp = model.SomeProp;
>entity.SomeProp1 = model.SomeProp1;
>entity.SomeProp_1 = model.SomeProp_1;

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

entity.Name = model.Name; , но нейм конкретного айдишника

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

Ответы>>757120

29 Май, 22:25 #318 #757120

>>757117
ты получаешь сущность по ее айди, целую одну. вот колонки именно этой одной записи ты и меняешь, шо нипанятнава

Ответы>>757137

48 Кб, 532x450

29 Май, 22:45 #319 #757137

>>757120
ахуить, анон, все заработало

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

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

Ответы>>757140

29 Май, 22:50 #320 #757140

>>757137
какой ты молодец, а
отсортируй таблицу по своему признаку по убыванию, а потом возьми из своего набора N записей. я думаю, сам осилишь? LINQ, ничего более

Ответы>>757154

29 Май, 23:10 #321 #757154

>>757140
SELECT * FROM GovnoTable
ORDER BY SomeProp DESC
LIMIT 5;

ну вот, а в LINQ как написать я хз, походу придется дрочить документацию, но все равно спасибо

Ответы>>757164

29 Май, 23:21 #322 #757159

>>757032
Примерами для уточек?
Я надеюсь, что ты скачаешь pdfку и откроешь её. Я уверен, что ты не станешь, но если ты это сделаешь - как же ты похаваешь дерьма, ебучий осёл.
PS
Книгу посоветовали читать при трудоустройстве в гугл. (бля не лично, в статье от гугла конечно)

Ответы>>757161>>757164>>757354

29 Май, 23:21 #323 #757161

>>757159
про*
быстрофикс

29 Май, 23:25 #324 #757164

>>757154
OrderBy
Take

>>757159
помолюсь завтра аллаху, чтобы тебя взяли в гугл

Ответы>>757184

5 Кб, 538x130

29 Май, 23:47 #325 #757184

>>757164
я сделал это

37 Кб, 489x184

84 Кб, 576x584

269 Кб, 586x365

48 Кб, 338x232

30 Май, 09:26 #326 #757354

>>757159
таки ты был прав. когда я открыл эту книгу и увидел уточек, я охуел

когда тебе завтра перезвонит гугол, не забудь рассказать здесь свою историю успеха

Ответы>>757433>>757452

2 Кб, 116x182

30 Май, 09:26 #327 #757355

Имеется текстовый файл с разрывами строк /r/n　и /n (пикрелейтед).
Нужно заменить все "одинокие" /n на /r/n. Какое регулярное выражение было бы правильнее использовать?

Ответы>>757356>>757357

30 Май, 09:29 #328 #757356

>>757355
Я бы решил без всяких регулярок в данном случае. Сначала заменяем все /r/n на какую-нибудь уникальную срань. Затем все /n на /r/n. А затем срань на /r/n. Конец.

Ответы>>757357

30 Май, 09:31 #329 #757357

>>757355
http://stackoverflow.com/questions/31053/regex-c-replace-n-with-r-n

>>757356
много избыточной работы со строкой, не думаешь?

Ответы>>757365

30 Май, 09:49 #330 #757359

Использую UdpClient.Receive, чтобы слушать порт. Естественно он блокирует поток. Как мне сделать, чтобы он слушал порт например 10 секунд, а затем продолжал работу?

Ответы>>757362

30 Май, 09:53 #331 #757362

>>757359
есть BeginReceive, есть ReceiveAsync

30 Май, 09:54 #332 #757365

>>757357
Спасибо. В очередной раз удивляюсь силе регулярных выражений.

30 Май, 11:30 #333 #757402

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

Ответы>>757410>>757426

30 Май, 11:46 #334 #757410

>>757402
Можешь, например, загружать на Dropbox.
https://www.dropbox.com/developers
https://www.dropbox.com/developers/documentation/dotnet#overview

30 Май, 12:18 #335 #757426

>>757402
также можно использовать azure, либо amazon s3

- загружаешь себе
- создаешь запись в бд
- говоришь клиенту 200 ОК
- отправляешь с помощью апи на третью сторону
- удаляешь у себя

Ответы>>757852

30 Май, 12:35 #336 #757433

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

Ответы>>757445

30 Май, 12:45 #337 #757445

>>757433
лучшие кодеры это у тебя кто?

Ответы>>757548

30 Кб, 338x232

30 Май, 13:00 #338 #757452

>>757354

31 Кб, 707x537

5 Кб, 810x86

30 Май, 13:29 #339 #757480

Писал себе спокойно программку в VS (первый пик). Внезапно стала вылазить эта хуйня (второй пик) при каждой компиляции и запуске приложения. Чем лечить такое?

Ответы>>757481>>757504>>757683

30 Май, 13:30 #340 #757481

>>757480
Картинки местами поменялись
%быстрофикс%

30 Май, 13:43 #341 #757504

>>757480
купить Enterprise

30 Май, 14:22 #342 #757548

>>757445
Очевидно, что те кто получает больше всех, нет?)))))))

30 Май, 17:51 #343 #757683

>>757480
DEBUG
D
E
B
U
G

Ответы>>757688

30 Май, 17:55 #344 #757688

>>757683
Но ведь это не моя программа крашится, пусть в Microsoft сами дебажат свои программы.

Ответы>>757716

30 Май, 18:09 #345 #757702

Нетаны, читаю короч di in .net, очень сложно без полных примеров программы. Можете накидать проектов на гитхабе, где всё это реализовано.

30 Май, 18:38 #346 #757716

>>757688
А ты купил ее?

Ответы>>757717

30 Май, 18:38 #347 #757717

>>757716
Нет, но и не своровал.

Ответы>>757723

30 Май, 18:47 #348 #757723

>>757717
скачал сворованную?)

Ответы>>757725

30 Май, 18:50 #349 #757725

>>757723
Она бесплатно распространяется.

Ответы>>757731

30 Май, 18:57 #350 #757731

>>757725
бесплатно нормальный софт не распространяется ж, ты понимаешь, да?

Ответы>>757738

30 Май, 19:06 #351 #757738

>>757731
У Microsoft и за деньги нормальный софт не найдешь.

Ответы>>757750

30 Май, 19:13 #352 #757750

>>757738
ты с яблоком перепутал

30 Май, 19:24 #353 #757758

как можно обеспечить безопасность WebAPI приложения (и пользователя, его использующего)?
AntiForgery, техники авторизации, HTTPS скипаем как очевидное ибо на интервью человека такой ответ не впечатлил

Ответы>>757769>>758285

29 Кб, 623x410

30 Май, 19:40 #354 #757769

>>757758
"Эти усики могут проникнуть куда угодно"

Ответы>>757779

30 Май, 19:45 #355 #757779

>>757769
те мниме ние?

30 Май, 21:24 #356 #757852

>>757426
А нельзя сразу загружать туда, а себе сразу получать ссылку по апи?

Ответы>>757862

30 Май, 21:31 #357 #757862

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

30 Май, 21:58 #358 #757893

Подкиньте идейку на диплом

Ответы>>757965>>757969

30 Май, 23:01 #359 #757965

>>757893
двач

30 Май, 23:03 #360 #757969

>>757893
Raycaster. С текстурками пола и потолка тоже.
Можешь как в doom, если захочешь (с секторами)

73 Кб, 600x404

31 Май, 09:37 #361 #758198

В шараге дали творческое задание, нужно написать простенькую программу с использованием классов. Подкиньте идей

Ответы>>758199>>758200>>758201

31 Май, 09:40 #362 #758199

>>758198
А ещё я совсем ньюфаг так что помощь мне тоже не помешает

31 Май, 09:41 #363 #758200

>>758198
ищо один

31 Май, 09:57 #364 #758201

>>758198
Бросай ты эту шарагу нахуй, программирование не для тебя.

мимо успешный менеджер-продаж

Ответы>>758202>>758206

31 Май, 09:58 #365 #758202

>>758201
почему еще не золотой директор орифлейм?

31 Май, 10:03 #366 #758206

>>758201
Я не собираюсь связываться с программиррванием, нам дали задание и нужно его сделать

бамп вопросу 31 Май, 12:25 #367 #758285

>>757758

31 Май, 22:33 #368 #758879

Зачем добавлять приставку http/https в неймспейсах контрактов?

[DataContract(Name="Person", Namespace = "http://Microsoft.ServiceModel.Samples")]

31 Май, 23:11 #369 #758930

Хлопци, можно ли в сисярпе для своего класса задать определённое поведение для приведения к типу не родительского класса? Ну например, есть у меня класс A со свойством public int X {get;set;}, что мне нужно в нём описать, чтобы я мог писать int i = 5+(int)A, где (int)A возвращает, допустим, значение свойства X?

Ответы>>758937

31 Май, 23:26 #370 #758937

>>758930
https://dotnetfiddle.net/8CLzRg

Ответы>>758940

31 Май, 23:33 #371 #758940

>>758937
Благодарю.

01 Июн, 00:08 #372 #758957

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

Ответы>>758961

01 Июн, 00:14 #373 #758961

>>758957
OrderBy->ToDictionary

Ответы>>758970

01 Июн, 00:28 #374 #758970

>>758961
SortBy скорее

Ответы>>758971

01 Июн, 00:28 #375 #758971

>>758970
*групбай

Ответы>>759001

01 Июн, 01:22 #376 #759001

>>758971
тебе нужно отсортировать? какой груп?

Ответы>>759034

01 Июн, 02:23 #377 #759015

Как передать в метод-расширение который вернет пользователей лямбду в качестве параметра и еще параметры элементов (от и до) над которыми мы будем шаманить?

Ответы>>759098

01 Июн, 05:09 #378 #759032

Анон,
Решаю следующую задачку:

Write a program, which finds the maximal sequence of consecutive equal elements in an array. E.g.: {1, 1, 2, 3, 2, 2, 2, 1} ==> {2, 2, 2}.

Мое решение:
http://pastebin.com/0Rvj11TM

Вопрос в том, а можно ли как-то упростить? Или понятнее написать? Например, с первого взгляда может быть непонятно почему при несовпадении надо ресетнуть tempCount = 1. Так надо сделать, потому, что в конце цикла временной переменной присваивается число из массива, которое точно там есть минимум в одном экземпляре.
Помоги новичку, программачик.

Ответы>>759076

01 Июн, 05:50 #379 #759034

>>759001
Есть лист объектов с полом муж/жен
Нужно забацать словарь, где 2 ключа, каждый соответствует полу, а значение - лист юзеров

Ответы>>759096>>759098

01 Июн, 09:38 #380 #759076

>>759032
https://dotnetfiddle.net/LiKQvJ
Но никогда так не делай, лол.

Ответы>>759281

01 Июн, 10:19 #381 #759096

>>759034
ToLookup

Ответы>>759098

01 Июн, 10:21 #382 #759097

>>754068
Заебись, искал где скачать (заебала студия громоздкая) и тут ты на дваче. Спасибо

01 Июн, 10:24 #383 #759098

>>759015
public IEnumerable<Polzovateli> Hui(Expression<Func<Polzovaleti, TKey>> key, Expression<Func<Polzovaleti, TParam>> valueFrom, Expression<Func<Polzovaleti, TParam>> valueTo) where TParam : IComparable<TParam>

>>759034
>>759096
чем ToDictionary хуже? или GroupBy, в качестве эквивалента?

Ответы>>759101>>759159

01 Июн, 10:35 #384 #759101

>>759098
Экспрешшоны то зачем, ти чиво?
Dictionary не будет тебе ничего группировать, groupby не предоставляет доступ по ключу, если GroupBy().ToDictionary() то да, а так нет.

Ответы>>759104

01 Июн, 10:44 #385 #759104

>>759101
ну он же хотел лямбду, ну и вот. можно, канеш, обойтись func<tobj,tparam>, но тогда мы не сможем понять, является ли param составляющим obj

01 Июн, 12:10 #386 #759155

Выполнение задачи раз в день?

01 Июн, 12:19 #387 #759159

>>759098
Только проснулся и чет нихуя не понимаю
Мы передаем три лямды...

Ответы>>759262

01 Июн, 14:25 #388 #759262

>>759159
тебе сколько надо? можешь массив лямбд, которые ссылаются на делегат передать

01 Июн, 14:32 #389 #759270

вот ни черта не разобрался с этим
Допустим, у нас есть List<Users> list

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

Ответы>>759274

01 Июн, 14:35 #390 #759274

>>759270
какой-то ты странный
> на основе передаваемой лямбды выводи юзеров
каша какая-то. надо-то тебе чего от этих трех параметров? какую информацию в методе тебе должна предоставить первая лямбда? что есть "элементы от и до"? критерии, от какого пользователя начинать, и кем заканчивать? или конкретные инстансы Users от которого и до которого?

Ответы>>759310

01 Июн, 14:43 #391 #759281

>>759076
Вообще не понял нихуя. Я до Linq еще не дошел.

Ответы>>759285

01 Июн, 14:47 #392 #759285

>>759281
твой кід на фиддлере вызывает ненависть и Execution time limit exception

Ответы>>759328

01 Июн, 15:10 #393 #759310

>>759274
пользователей, передавая произвольное условие (лямбда - выражение) и два параметра - с какого элемента выбирать и по какой

Ответы>>759323

01 Июн, 15:23 #394 #759323

>>759310
public static IEnumerable<User> FuckOff(this List<User> users, Func<User, bool> predicate, User fromint from, User toint to)
{
return users.SkipWhile(e=>e==from).TakeWhile(e=>e==to).Where(predicate);
}

так?

Ответы>>759327>>759364

01 Июн, 15:26 #395 #759327

>>759323
> FuckOff
Мне нравится твой подход

01 Июн, 15:26 #396 #759328

>>759285
>> кід
шо эта?

>>Execution time limit exception
Я на SharpDevelop пишу, все работает.

Ответы>>759340

01 Июн, 15:46 #397 #759340

>>759328
ну если я в VS запущу, проблем тоже не увижу

Ответы>>759407

01 Июн, 16:17 #398 #759364

>>759323
Идея правильная, спасибо

01 Июн, 17:20 #399 #759407

>>759340
Ты наверное хотел что-то сказать, но смысл ускользает от меня, серьезно.

Ответы>>759463

01 Июн, 18:06 #400 #759463

>>759407
хотел сказать тошо так писать нельзя

Ответы>>760057

02 Июн, 14:04 #401 #759994

Алё, у вас чё, даже конфы никакой нет?
Сделойте пожалуйста, чё вы как эти

02 Июн, 15:23 #402 #760057

>>759463
Как нельзя то? Ты можешь внятно объяснить, что не так?

другой анон

02 Июн, 16:32 #403 #760118

Допустим я создал задачу и жду её выполнения 10 секунд.
var task = MegaTask("parametr");
if (task.Wait(10000)){
//код, если задача успела выполниться
}
Как мне отменить выполнение задачи, если она не успела выполниться?

Ответы>>760124

02 Июн, 16:36 #404 #760124

>>760118
CancellationToken

Ответы>>760139

02 Июн, 16:49 #405 #760139

>>760124
Но это же мне придется в задаче отлавливать изменение токена вручную. А если у меня в задаче есть метод, блокирующий выполнение потока? Я так и не дойду до проверки на токен.

Ответы>>760181

02 Июн, 17:46 #406 #760181

>>760139
абортить тред, либо игнорировать результат

02 Июн, 21:32 #407 #760302

>>750374
ну торопись, подумай. Геймдев в рашке (особенно мелкий) это полный пиздец. Зп маленькие, запросы и требования охуевшие. Съебался в тырпрайз - слезы счастья на глазах. Все строго по таскам, все оговорено, никто не доебывает постоянными изменяющимися задачами. И да, платят больше. Если все-таки хочешь геймдев и нормальные деньги, выбор только один - с++.

Ответы>>760336

02 Июн, 22:20 #408 #760336

>>760302
да ладна
что нужно знать про геймдев - там надо ебашить, выдавать код на-гора

116 Кб, 600x535

02 Июн, 22:26 #409 #760350

Как писать на f#?
Есть какие-то ресурсы для имбецилов?

Если кто-то шарит, помогите перевести 3 строчки с# в f#,
я чота нихуя не понял, где у него await взять, последняя закометированная строчка

http://ideone.com/quutmo

03 Июн, 00:06 #410 #760439

Ребзя, хелп! Нужна visual studio 2008 professional. Где можно найти? Вы моя последняя надежда

Ответы>>760452

03 Июн, 00:54 #411 #760452

>>760439
Конечно же купить, товарищ майор

6 Кб, 594x115

7 Кб, 463x164

03 Июн, 11:46 #412 #760553

Сап программач.
Получаю UDP пакеты и сразу их закидываю в очередь packagesQueue (пик 1).
Очередь обрабатываю в отдельном потоке, в методе PackagesHandler (пик 2).
Суть в том, что этот поток очень сильно нагружает процессор. Я понимаю, что это из-за бесконечного цикла, но другого решения придумать не могу.

Ответы>>760557

03 Июн, 11:59 #413 #760557

>>760553
вариант так себе - перед continue добавить thread.sleep

вариант получше - ждать Manual/AutoResetEvent

Диаграмма классов C# на Linux/OS X 03 Июн, 12:20 #414 #760562

Нужно построить диаграмму классов по PCL dll'ке или по проекту Xamarin.

VS юзать не могут работаю на маке,
Для Xamarin/VSCode нужного плагина не нашел.
Нашел NClass - он не обновлялся с 2011 и тупо падает при открытие скомпилированной dll.

Может сайты какие-нибудь есть что бы online это делали?
Или еще какие-нибудь C# приложения (работающие на mono)?

Ответы>>760566

03 Июн, 12:29 #415 #760566

>>760562
V - virtualka

03 Июн, 22:12 #416 #760908

как вывести все элементы массива из файла
строки
TextBox.Text = (masfile[?????]);

Ответы>>760910>>760912>>760922>>760935

03 Июн, 22:14 #417 #760910

>>760908
1

03 Июн, 22:14 #418 #760912

>>760908
Наркоман штоле?

03 Июн, 22:28 #419 #760922

>>760908
я, возможно, слишком пьян, но што такое файл строки?

03 Июн, 22:50 #420 #760935

>>760908
Открываю через OpenFileDialog .txt как массив, не могу вывести все элементы .

Ответы>>761149

04 Июн, 11:50 #421 #761149

>>760935
значит тебе это просто не нужно

04 Июн, 16:22 #422 #761293

Так что, господа, давайте замутит свою конфу с дотнетом и линком?

Ответы>>761294>>761672

04 Июн, 16:23 #423 #761294

>>761293
Чтобы что?

04 Июн, 22:09 #424 #761672

>>761293
мутижабу

05 Июн, 03:12 #425 #761917

Поцаны, поясните тупому, вот есть класс "Главпетух" который реализует интрефейс "Кудахтер", и есть дочерний класс "Шконарный петух", так вот, дочерний класс полностью наследует реализацию интерфейса "Кудахтер" ?

Ответы>>761957

05 Июн, 07:25 #426 #761957

>>761917
Ты бы пример в иде для начала сделал, посмотрел как оно работает, а потом и вопросы задавал. На крайний случай гугл

109 Кб, 736x1100

Хули не работает-то? 05 Июн, 09:59 #427 #762001

Cап программач, только что попробовал работу с БД Access. В итоге на DataGridView отображаются колонки, вот только сохранить данные нихуя не получается. Да и при изменении самой БД, при компиляции программа кладет на это хуй. Хоть колонки удаляй, хоть данные вписывай - ноль реакции. Анон, помоги плез

Ответы>>762015

05 Июн, 10:34 #428 #762015

>>762001
А, все, я разобрался

Ответы>>762099

05 Июн, 12:30 #429 #762090

Посоны, нет ли какой либы, для поиска файлов по wildcard? Нужны include/exclude фильтры для файлов/папок. Например как в msbuild можно указать dir1//*.yoba, вот я хочу либе отдавать набор таких строк, а она мне файлы в ответ. Можно было бы из msbuild'а выдрать, но он большой и зависимости на зависимостях, оверкил в общем.

Ответы>>762305

05 Июн, 12:40 #430 #762099

>>762015
В чем там дело? Тоже хотел делать на .NET на основе Access, были такие же вопросы, пока отложил эту задачу.
Надо может сделать тупо поля с текстом и списками, где надо, чтобы добавлять данные?
Скинь ссылку, по которой разбираешься.

05 Июн, 16:32 #431 #762305

>>762090
Directory.GetFiles + регулярки
+ http://stackoverflow.com/questions/188892/glob-pattern-matching-in-net

Ответы>>762349

05 Июн, 17:08 #432 #762349

>>762305
Спасибо, хоть узнал как это называется.

Ответы>>762832

05 Июн, 17:27 #433 #762364

Платина.
Поясните за .net core.
1) есть ли вакансии? Сильно ли отличается процесс разработки mvc?
2) удобно ли разрабатывать на линуксе/маке в VS code? Единственное, что удерживало меня от покупки мака - это то, что я дотнетчик. С редактором вместо Иде готов мириться.

Ответы>>762369>>762467

180 Кб, 1220x432

05 Июн, 17:35 #434 #762369

>>762364

05 Июн, 18:52 #435 #762467

>>762364
ты думаешь, ~Core - это какой-то принципиально другой дотнет?
процесс разработки отличается так же, как отличается процесс разработки на новой и старой версиях продукта

05 Июн, 19:14 #436 #762495

Предположим, есть class Base.
И есть class Derived : Base.
Тогда в чём смысл Base base_derived = new Derived?
Я думал, что если Derived оверрайдит что-то в Base, то объект будет типа Base но с частью свойств Derived - попробовал погонять так и сяк, но нихрена, и у меня получилось, что от Derived сработал только конструктор, как я понял если я вообще правильно понял.

Ответы>>762500>>762760

05 Июн, 19:18 #437 #762500

>>762495
Так объект и будет типа Base , но Derived, ты покажи код то и что ожидаешь, а лучше перечитай главу про наследование и полиморфизм.

Ответы>>762762

06 Июн, 05:30 #438 #762760

>>762495
Если ты хочешь, чтобы поведение методов изменялось, то в base помечай их virtual, а в наследнике переопределяй их, помечая override

Ответы>>762762

45 Кб, 738x843

06 Июн, 06:53 #439 #762762

>>762500
>>762760
Я и virtual, и override ставил.
Сейчас ещё раз попробовал - получилось.
Видимо, что-то неправильно в прошлый раз сделал, но код сохранять не стал. Кода было больше, но он был такой же, и свойства не менялись. Хотя одно из свойств конструктором Derived менялось.

Ответы>>762763

06 Июн, 06:56 #440 #762763

>>762762
А, я забыл спросить - зачем так делают? Я что-то ничего не придумал, кроме как создавать массив из объектов разных типов.

Ответы>>762765

06 Июн, 07:35 #441 #762765

>>762763
Время читать про наследование и полиморфизм

06 Июн, 12:39 #442 #762832

>>762349
Нашел таки Microsoft.Extensions.FileSystemGlobbing хоть он и prerelease, все как я и хотел.

06 Июн, 22:49 #443 #763245

У меня вопрос к гуру архитектуры.
Есть контроллер, который аплодид файлы на удаленный сервер. Наследует интерфейс, который дает доступ к методу Upload и все.

Есть GUI с кастомным диалогом, по типу FileDialog (браузит файлы на сервере) и есть, э, консолька. Обе этих хуйни можно использовать для вызова аплода из контроллера.
Теперь проблема: GUI на wpf и нужно сделать так, чтобы при сохранении файла, проходила валидация и диалог не закрывался, если валидация не прошла.
Как это лучше сделать? Сейчас на кнопку save навешана команда, которая банально задает dialogresult для вьюхи и она закрывается.

Идеи: диалог открывается не напрямую из контроллера (он не знает про гуй вообще), а из другого контроллера, который на действия от пользователя вызывает нужную хуйню. В этот контроллер вынести валидацию в виде метода и передавать его делегатом во вью модел. Перед закрытием проверять результат, tru - закрыть, false - не надо. Лучше я ничего не придумал, но от этой идеи веет говном, как мне кажется. Кто что посоветует?

Ответы>>763254>>763276

06 Июн, 23:02 #444 #763254

>>763245
Нет, нормально, сделай, как придумал.

06 Июн, 23:34 #445 #763271

Аноны, кто напишет просто приложение базы данных? Просто чтобы таблички в нем редактировались и сохранялись, ну пару отчетов каких нибудь. Стоимость работы обсудим

Ответы>>763284

06 Июн, 23:37 #446 #763276

>>763245
вместо одного контроллера - два? в этом импрувмэнт? или я шото не так понял

06 Июн, 23:52 #447 #763284

>>763271
а SQL Server Management Studio чем не угодил?

Ответы>>763308>>763313

07 Июн, 00:23 #448 #763308

>>763284
базу я там построил, с приложением на C# проблемы, устал с ошибками бороться надолго это уже затянулось

07 Июн, 00:27 #449 #763313

>>763284
Additional information: В столбце "name_client" не допускаются значения равные nulls.
вот как с таким бороться?

Ответы>>763318

07 Июн, 00:55 #450 #763318

>>763313
Не записывать null в name_client

Ответы>>763404

07 Июн, 01:01 #451 #763320

Запрашиваю поддержку у mvc entity богов. Суть проблемы такова:
через Framework надо обратиться к разным дата провайдерам и сейвченджнуться. т.е. есть вот такое:

public void someMethod(SomeViewModel item)
{
Framework.FirstDataManager.FirstEdit(item.First);
Framework.FirstDataManager.FirstEdit(item.Second);
}

при Db.Entry(item).State = EntityState.Modified;
выдает: An entity object cannot be referenced by multiple instances of IEntityChangeTracker.
как я понял проблема именно в том что подключение к базе еще не разорвано и к ней пилят новое, по-этому такая хуйня, как такое решать.

Ответы>>763403

07 Июн, 07:22 #452 #763403

>>763320
Unit of work

07 Июн, 07:31 #453 #763404

>>763318
естественно я не записываю, почему такое случается?

Ответы>>763412

07 Июн, 08:01 #454 #763412

>>763404
естественно, записываешь. никто тебе не навангует, не видя кот

Ответы>>763420

07 Июн, 08:26 #455 #763420

>>763412
да я ниче там не трогал, вот только это дописал
private void bindingNavigatorAddNewItem_Click(object sender, EventArgs e)
{
clientTableAdapter.Adapter.Fill(vKRBDataSet);
}

Ответы>>763427

07 Июн, 09:13 #456 #763427

>>763420
Сатри,что за данные в датасете, почему и откуда они такие берутся

07 Июн, 13:58 #457 #763582

Анон, объясни дауну. Вылез из бункера, тут завезли C#5.0 с его async/await связкой.
Который день играюсь с этим, но до сих пор грань в моём понимании между асинхронным и обычным кодом тонка.
Вот допустим таск запускаем, да, живёт своей полноценной жизнью.
Вот допустим другой таск запустили в асинхронном методе и ожидаем его, он что-то делает, компилятор уже успел прикрутить СтейтМашину и продолжение, выполнил таск и продолжил.
А вот если я получаю, допустим, список пикч таким образом:
Bitmap[] bmps = null;
HttpClient hc = new HttpClient(new HttpClientHandler() { Proxy = null, UseProxy = false });
var urls = users.Select(v =>
{
return v.AvatarUrl;
}).Where(url => !String.IsNullOrEmpty(url)).ToList();
var tasks = urls.Select(async url =>
{
return new Bitmap(await hc.GetStreamAsync(url));
});
bmps = await Task.WhenAll(tasks);

Массив ждёт выполнения тасков и по окончании достаёт из этого IEnumerable<Task<Bitmap>> tasks сами пикчи для дальнейших манипуляций.
Анон, поясни для уверенности, как рюмка на столе, await просто ожидает пока не выполнится метод и если там что-то есть для возврата, то он это возвращает?

Анон, а если ещё пояснишь что происходит с вызывающим потоком, то я отсОсу буду тебе признателен.

Ответы>>763603

07 Июн, 14:27 #458 #763603

>>763582
Иди гугли что такое корутины AKA сопрограммы

07 Июн, 16:41 #459 #763697

>>749551
>9. Что почитать?
>- The C# Player's Guide, второе издание (RB Whitaker) - отличная книга для ньюфагов в шарпе, все расписывается довольно подробно, очень много примеров кода.

Ребят. А есть че нибудь подобное на русском, для совсем нюфагов?

Ответы>>763719

07 Июн, 17:32 #460 #763719

>>763697
C# для школьников погугли, там смешные картиночки даже есть

Ответы>>763722

07 Июн, 17:40 #461 #763722

>>763719
может есть какой нибудь аналог С++ за 21 день?

Ответы>>764032

07 Июн, 18:42 #462 #763791

Ребят, у меня в программе есть функция отправки через POST и функция, грузящая капчу на антигейт и возвращающая результат. Все это наглухо вешает основной поток. Что мне использовать, если я нуб чтобы это все запихать в другие потоки и жить спокойно? Капча пишет результат в текстБок а так же обращается к richTextBox.Lines.
Подскажите. Есть вроде какой-то бэкграундКомпонент?

Ответы>>763864>>764032

89 Кб, 768x1024

07 Июн, 18:57 #463 #763803

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

Ответы>>763855

65 Кб, 604x561

07 Июн, 19:37 #464 #763839

Еще один ньюфагский вопрос привнесу itt.

>Известно, что у чисел, которые являются степенью двойки, только один бит имеет значение 1. Напишите программу, которая будет выполнять проверку – является ли указанное число степенью двойки или нет.

Понятно что надо надо проверить что в числе, только один бит имеет значение 1, но как это сделать средствами c#?

И из той же оперы
>Известно, что у четных чисел младший бит имеет значение 0. Напишите программу, которая будет выполнять проверку чисел на четность . Предложите два варианта решения поставленной задачи.

Первый вариант как я понимаю, сделать << 32(в случае работы с int) и получится либо 32 нуля либо 32 единицы. Насколько правильно так решать задачу и какой еще 1 вариант решения может быть у нее?

Вопросы дико нубские наверное, но никогда не занимался битоебством и хотелось бы разобраться с этим. Буду очень признателен за помощь.
Задачки из курса itvdn, что в шапке треда

Ответы>>763864>>764032

07 Июн, 19:50 #465 #763855

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

Ответы>>763868

07 Июн, 19:56 #466 #763864

>>763791
>бэкграундКомпонент
BackgroundWorker. Может подойдет, но говорят что он умер.
>>763839
http://stackoverflow.com/questions/2431732/checking-if-a-bit-is-set-or-not

Ответы>>764278

07 Июн, 19:59 #467 #763868

>>763855
Это то понятно, но как этот шаблон заполнять? И можно ли функцию печати вывести сразу в прогу, без скачивания ворда?

Ответы>>763891

07 Июн, 20:02 #468 #763872

C# one love :3

07 Июн, 20:16 #469 #763891

>>763868
Погугли.
Да можно, но тогда тебе придется самому совокупляться с версткой документа и зашить ее прямо в код.

102 Кб, 1920x1080

07 Июн, 21:56 #470 #764016

Что такое tree-based rendering?

Ответы>>764121

07 Июн, 22:15 #471 #764032

>>763791
асинхронность не завезли?

>>763722
ну С# за 21 день, думаю

>>763839
по первой задачке, наверн, в цикле сдвигать влево и чекать первый бит. Считать количество совпадений
по второй - int_number & 1 != 1

Ответы>>764278

07 Июн, 23:33 #472 #764121

>>764016
Залазиш на дерива с мальбертам и рисуиш там.

Ответы>>764214

08 Июн, 01:33 #473 #764214

>>764121
... листья

93 Кб, 750x904

24 Кб, 464x535

24 Кб, 475x542

08 Июн, 01:41 #474 #764217

Делаю проект, суть которого создать веб службу на 5 методов и приложение которое будет использовать эти службы.

Я невнимательно читал и подумал, что веб сервис это сайт и сделал сайт на asp.net mvc, есть бд, есть методы в контроллере которые работают с этой бд.

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

Если да, то что теперь я должен сделать?

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

И еще как создать проект веб службы? Я просто не вижу в меню создания проектов в вижуал студио надписи "веб служба" или "web service".
я уже совсем запутался и еще понял свой проеб поздновато, надо по фасту все исправлять, стремно если не успею

Буду очень благодарен за помощь

Ответы>>764218>>764299>>764306>>764327>>765209

08 Июн, 01:43 #475 #764218

>>764217
> Я просто не вижу в меню создания проектов

вернее вижу то, что выделено на скрине, но то ли это, что мне нужно?

168 Кб, 980x1280

08 Июн, 07:14 #476 #764278

>>764032
>по первой задачке, наверн, в цикле сдвигать влево и чекать первый бит
Усложняешь.

if number & 1 == 1 then "odd" else "even"

>>763864
За ссылку спасибо, помогла.

Мимоанон задавший этот вопрос.

Ответы>>764279

08 Июн, 07:18 #477 #764279

>>764278
Ой, обсрался. Не туда глянул.

По первой задачке намного проще цикла использовать формулу
n && (n – 1) = 0
If 0 значит степень двойки.

Ответы>>764294

Антон 08 Июн, 08:21 #478 #764289

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

08 Июн, 08:36 #479 #764294

>>764279
И опять обосрался
>>&&
&*
Не стоит отвечать сразу после сна, ой не стоит.

08 Июн, 09:10 #480 #764299

>>764217
бамп вопросу

08 Июн, 09:28 #481 #764306

>>764217
Ясно только то, что ты нихуя не понял. Веб сервис - это что угодно, что отдает тебе данные, на какой технологии ты его напишешь - вопрос не первой важности.

08 Июн, 10:04 #482 #764327

>>764217
Хуя WebApi
Из MVC будет не так больно переделать
http://metanit.com/sharp/mvc/12.1.php

Ответы>>764481

08 Июн, 13:07 #483 #764481

>>764327
Задание сделать веб сервис и приложение которое будет использовать веб сервисы этого метода.

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

Ответы>>764484

08 Июн, 13:08 #484 #764484

>>764481
>методы этого веб сервиса
Быстрофикс

Ответы>>764489

08 Июн, 13:13 #485 #764489

>>764484
тебе нужно сделать одно из:
- mvc приложение с развернутым там недорест веб-сервисом
- webapi приложение
- wcf приложение (это как бы то, что будут ждать в идеальном случае, если я правильно понял)
и к этому нужно сделать нечто, что будет использовать апи твоего вышеописанного говна. под нечто я имею ввиду именно нечто, хоть консольное приложение

Ответы>>764801

08 Июн, 14:23 #486 #764561

Аноны, мне надо парсить следующее:
>Уведомление отправляется как HTTP-запрос на адрес, указанный в настройках счета, в следующем формате:
>метод — POST;
>каждый параметр уведомления указывается парой ключ/значение в виде параметра POST-запроса;
>MIME-тип — application/x-www-form-urlencoded;
>кодировка символов — UTF-8.
>Для приема уведомлений рекомендуется использовать протокол HTTPS. Обратите внимание, что получение контактной информации об отправителе в уведомлениях возможно только при использовании этого протокола. При использовании протокола HTTP контактные данные в уведомлении передаваться не будут.

Мне для парсинга этого надо что учить? Web-Response?

Ответы>>764566

08 Июн, 14:29 #487 #764566

>>764561
в респонзе есть поток ответных данных. бери и парси

Ответы>>764570

08 Июн, 14:32 #488 #764570

>>764566
Я в webResponse знаю только как это пишется, и то, возможно, неправильно. Ща буду разбирать. Просто не хотелось бы разбирать то что не то. А может кто-нить скинет простенький пример, что б в одном окне отправить Hello, а в другом принять, через WebRequest и WebResponse?

Ответы>>764603

08 Июн, 15:17 #489 #764603

>>764570
из оного окна в другое это сокеты, веб-запросы тут не причем

Ответы>>764610

08 Июн, 15:26 #490 #764610

>>764603
Вот и я так понимаю, что мне надо не создавать запросы а генерировать ответы на них, и классы WebRequest и WebResponse мне не помогут. А что надо, что бы ответить на запрос WebRequest я пока не понял...

Ответы>>764622

08 Июн, 15:37 #491 #764622

>>764610
веб-сервер

08 Июн, 18:08 #492 #764771

Литература по ASP.NET первая устарела. Я пытался на вс ком 2015 запускать проекты, везде эксепшны и ошибки. Чо посоветуете, аноны? Качать 2013 для professional asp.net или нахуй?

Ответы>>764781

08 Июн, 18:18 #493 #764781

>>764771
какие эксепшны, вася? создал проект asp net core по учебнику mvc 4?

Ответы>>765300

08 Июн, 18:32 #494 #764801

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

>То есть по сути приложение у меня уже есть. Теперь по идее нужно создать веб сервис, там создать бд, и создать методы, подключить как-то веб сервис к своему сайту и с методов контроллера своего сайта обращаться к методам веб сервиса? Я правильно понимаю?

Ответы>>764808

08 Июн, 18:37 #495 #764808

>>764801
ты хочешь к созданному сервису прикрутить другой сервис?

Ответы>>764828

08 Июн, 19:07 #496 #764828

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

Приложение - сайт уже есть, нужно прикрутить к нему сервис.

Ответы>>764839

08 Июн, 19:20 #497 #764839

>>764828
пишешь так, шо нихуя непонятно
тебе теперь, по сути, можно html+js присандалить как клиент твоего приложения

Ответы>>764865

08 Июн, 19:49 #498 #764865

>>764839
Какие html и js? Причем тут это? Ты меня троллишь чтоли?

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

Требование:
Мне нужно создать веб службу и приложение которое будет использовать эту службу.

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

Я понимаю это так, что есть веб служба у которой есть методы, например, заказатьБилет(номер места). Когда кто-то покупает билет, то в коде сайта прописано обращение к этому методу веб службы. И на всех сайтах которые берут данные из БД веб службы статус меняется. И на всех сайтах выбранное место становится неактуальным.

Дано:
Так вот, у меня есть сайт, то есть приложение asp.net mvc. На котором можно зарегистрироваться, редактировать информацию о себе, посмотреть список всех зарегистрированных. Мой сайт юзает базу данных где хранятся все данные зарегистрированных пользователей. Сайт открывается в браузере и там можно делать те действия которые я писал выше.

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

А потом обращаться со своего уже сделанного сайта к этой веб службе и юзать методы этой веб службы.

Блять, я уже не знаю как понятней объяснить. Я не понимаю, что не понятного я пишу.

Вопрос:
Правильно ли я все разжевал по поводу веб служб? Если нет, то что именно и почему?
Правилен ли мой план?

Ответы>>764867>>764881>>765209

08 Июн, 19:55 #499 #764867

>>764865
Лел, давно бы уже сделал, а ты все советы спрашиваешь

Ответы>>764870

08 Июн, 20:04 #500 #764870

>>764867
Я на паре сейчас вечером хочу делать, но хочу убедиться, что я правильно все понимаю

08 Июн, 20:10 #501 #764881

>>764865
> обращаться со своего уже сделанного сайта к этой веб службе и юзать методы этой веб службы
ну вот тебе html + js, только сверху у тебя будет движок MVC и куча мути, с ними завернутой, хули ты мне мозги ебешь?

> Правильно ли я все разжевал по поводу веб служб?
если совсем быть кратким, то да
если нет, то Веб-служба, веб-сервис — идентифицируемая веб-адресом программная система со стандартизированными интерфейсами.
Веб-службы могут взаимодействовать друг с другом и со сторонними приложениями посредством сообщений, основанных на определённых протоколах (SOAP, XML-RPC, REST и т. д.). Веб-служба является единицей модульности при использовании сервис-ориентированной архитектуры приложения.
В обиходе веб-сервисами называют услуги, оказываемые в Интернете. В этом употреблении термин требует уточнения, идёт ли речь о поиске, веб-почте, хранении документов, файлов, закладок и т. п. Такими веб-сервисами можно пользоваться независимо от компьютера, браузера или места доступа в Интернет
и ответ тоже да, но так ты почитал хоть что-то полезное

Ответы>>764909

08 Июн, 20:33 #502 #764909

>>764881
Не знаю можно ли писать запросы к веб службе js, мне во всяком случае нужно писать из контроллера и не придумывать велосипед, но причем тут нахуй html, какое еще дополнительный html код по твоему мнению я буду должен добавить на свой сайт? Да и даже если можно с js писать, то я совсем не те вопросы задавал.

Ответы>>764914

08 Июн, 20:39 #503 #764914

>>764909
расскажи мне, будь добр пожалста, как будет выглядеть процесс, скажем, авторизации пользователя с имеющегося в данный момент у тебя MVC приложения в новосозданном веб-сервисе? говоря конкретней, что и с помощью чего, откуда и куда будет поступать/стучать/получать/и т.д.?

Ответы>>764938

08 Июн, 21:00 #504 #764938

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

Ответы>>764950

08 Июн, 21:10 #505 #764950

>>764938
я тебя спрашивал не про безопасность. а про то, какие шаги с каждой стороны проекта ты сделаешь для того, чтобы пройти тот или иной шаг процедуры? для описанного тобой примера, как ты скомпонуешь данные "чела", куда и с помощью чего ты отправишь, как будешь использовать ответ удаленного приложения/сервиса?

Ответы>>764955

08 Июн, 21:14 #506 #764955

>>764950
Смысл от твоих вопросов? Что значит "скомпонуешь"? Чел нажмет кнопку отправить, мой метод примет эти данные передаст их в метод веб сервиса, а там метод веб сервиса запишет их бд? Что из этого тебе не понятно? Да и к чему твои вопросы? Это я пришел сюда с вопросами, а в итоге отвечаю на твои вопросы которые, честно говоря тупые, если можешь доказать обратное, то разжуй как я.

Ответы>>764962

08 Июн, 21:38 #507 #764962

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

Ответы>>765193

09 Июн, 01:58 #508 #765193

>>764962
я тут весь тред распинаюсь с вопросами правильно ли я понимаю работу веб служб, описал свою ситуацию и задал вопросы с просьбой обьяснить, а по сути все, что ты написал
> по сути, можно html+js присандалить как клиент твоего приложения

То есть понимая весь механизм ты поленился обьяснить почему я не прав, а написал просто "Ну ок, посмотрим как ты напишешь это"

Ответы>>765267

09 Июн, 02:25 #509 #765209

>>764217
Консольное приложение тебе надо.
В нем бесконечно слушай любой порт на предмет сообщений от твоих клиентов и делай в нем все что нужно. Формат сообщений не важен наверно, можно свой, можно какой-нибудь стандартный вроде хмл-рпц.

Вот. А потом после отладки сделать его одной из служб шинды.

>>764865
>Правилен ли мой план?
Вероятно правилен. Но будет оче много гемороя с сетевой частью, там где можно просто поднять обычный веб-сервер с твоим сайтом. Будет локальный недосайт с прямыми запросами на хз какой ойпи с сомнительными предложениями к одной из служб винды.
Учебный мараз корч.

09 Июн, 08:58 #510 #765267

>>765193
на этот вопрос я тебе ответил "да, правильно", ты просто жопой читаешь

09 Июн, 10:53 #511 #765300

>>764781
mvc 5, эксепшны с базой данных вылезают. Книга для в3 ком 13, а у меня ком 15

Ответы>>765301

09 Июн, 10:57 #512 #765301

>>765300
13 community не было

Ответы>>765310

09 Июн, 11:06 #513 #765310

>>765301
вопрос мой повторю: Стоит ли качать вс 2013 для 2 книг из 3 что в шапке, или стоит забить и учить по вс ком 2015?

Ответы>>765314>>765324

09 Июн, 11:12 #514 #765314

>>765310
13 не нужна

09 Июн, 11:27 #515 #765324

>>765310
я уверен, что ничего от смены студий не изменится. мой ответ нит

09 Июн, 13:04 #516 #765376

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

пошелгуглить

Ответы>>765377

09 Июн, 13:07 #517 #765377

>>765376
каждый имеет свои преимущества)

14 Кб, 466x327

20 Кб, 700x465

13 Кб, 1109x115

09 Июн, 14:33 #518 #765440

Аноны который ебется с веб службами и хочет подключить их к сайту MVC в треде.
Пик 1:
Создал веб службу, при обращении методу веб службы который отдает список всех записей в бд получаю в гугл хроме страничку xml с записями. Вроде то, что и нужно.

Далее Пик 2:
Здесь я уже пытаюсь со своего контроллера обратиться к веб службе и получить данные всех записей в бд.

Пик 3: Ошибка которую я имею.

Вопрос:
Как сделать так, чтобы обратиться к веб службе, получить от нее ответ, а потом преобразовать в тип который нужен представлению?

Ответы>>765464

09 Июн, 15:00 #519 #765464

>>765440
GetAstnc возвращает тебе респонс с контентом и хедерами, читаешь контент, десериализуешь его, ..., профит.

Ответы>>765551

09 Июн, 17:11 #520 #765551

>>765464
бля, а как это написать кодом?

Ответы>>765573

09 Июн, 17:33 #521 #765573

>>765551
(await GetAsync(URI)).Content
с этого экземпляра можешь вытянуть стрим данных, прочитать как строку, либо прочитать как массив байт

09 Июн, 20:11 #522 #765727

Суп, пр.
У меня WPF. Со стороннего сервиса вытягиваются метаданные, по которым строятся инстансы коллекции объектов. Мне хочется/надо сделоть какой-нибудь прикольный контрол (like ListView), чтобы на нем отрисовывались динамически элементы. Объект создался -> его вьюха добавилась на контрол. Я только начал в впф, памагити, как сделать хорошо? Можно как-то ListView забиндить на мою коллекцию элементов и заставить рефрешитсья при добавлении элементов в онную? Ну или как это сделать хорошо?

Ответы>>765744

09 Июн, 20:21 #523 #765744

>>765727
MVVM

09 Июн, 21:26 #524 #765806

Эх, сейчас бы перекат

Ответы>>765958

09 Июн, 22:11 #525 #765830

- Professional ASP.NET MVC 5 (Jon Galloway, Brad Wilson, K. Scott Allen, David Matson)
- Pro ASP.NET MVC 5 Platform (Adam Freeman)
Добавь в некст шапку что это для вс 13, на вс 15 не пашут примеры.
Или добавь другие годные книжки для вс 15.

Ответы>>765843

09 Июн, 22:29 #526 #765843

>>765830
... не пашут у тебя

10 Июн, 01:14 #527 #765958

>>765806
Барыги в прошлый раз херовый подсунули. ОП-пик сразу отвалился, не прошло и сотни постов!

10 Июн, 02:21 #528 #766007

Не прошло и двух часов https://2ch.hk/pr/res/766002.html (М)

10 Июн, 12:44 #529 #766220

да посоветуйте уже книжку по C#, для совсем дебилов, на русском языке и в электронном варике, плез плез плез!

Ответы>>766227

10 Июн, 12:52 #530 #766227

>>766220
Шилдт

Ответы>>766259

10 Июн, 13:45 #531 #766259

>>766227
сам 265!

11 Июн, 18:50 #532 #767171

пацаны, как попрактиковаться в sql?

13 Июн, 21:35 #533 #768842

Сап, нужна помощь. Как обратится к элементу ToolStripMenuItem, что бы изменить свойство Checked?

211 Кб, 680x1071

13 Июн, 22:41 #534 #768863

Как устроиться джуниором если есть ВО, но нет особо никакого опыта?

Рассылал резюмешки по компаниям, даже на интервью не пригласили, мрази.

Посоветуйте чего, посоны.

Ответы>>777304

21 Июн, 23:33 #535 #776507

Сап, прогроммач. Скоро пойду на курсы, будут преподавать C#. Говорили будет front end и что-то с JQuery. Сам я нубас в этой теме. Что посоветуешь почитать?

22 Июн, 18:42 #536 #777302

Вечер в хату, зк!
Какой ближайший аналог типа Object из Javascript есть в c#? Надо чтобы была па ключ - значение, при том чтобы значение могло бы быть любого типа. Ну и чтобы можно было удобно сериализовать в json-строку.

22 Июн, 18:45 #537 #777304

>>768863
Создавай проекты в гитхабе, кормить чужой код. Работодатель смотрит на это.
Миможсбыдло

Ответы>>777307

22 Июн, 18:45 #538 #777307

>>777304
Коммить
Быстрофикс

Тред утонул или удален.
Это копия, сохраненная 29 июня 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion