Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.Литература вторым постом1. Ресурсы:- http://stackoverflow.com/questions/tagged/c%23- 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_compiler3. WinForms или WPF?Зависит от задачи. Для небольших проектов, скорее всего, будет достаточно винформочек. В случае, если разрабатываемое приложение достаточно серьёзное, то возможно его стоит писать с использованием WPF. WPF очень хорошо работает с паттерном MVVM ( https://ru.wikipedia.org/wiki/Model-View-ViewModel ), и позволяет пилить очень кастомизированные интерфейсы с помощью XAML, что в случае WinForms, делать намного сложнее.4. Мне тут знакомый_нейм сказал, что C# умирает, это правда? Может не стоит его учить?Неправда. C# довольно активно развивается, недавно вышел новый компилятор, шестая версия шарпа, и уже активно разработывается седьмая. Весь дотнет понемногу становится опенсорсным, а ASP.NET становится независимым от платформы. В некотором смысле понемногу вымирают десктопные приложения с развитием веб-технологий, но в том же энтерпрайзе он еще очень даже востребован.5. Какую ИДЕ выбрать?- Visual Studio ( https://www.visualstudio.com/downloads/download-visual-studio-vs ) - самый очевидный вариант для Windows. Студия распространяется в двух редакциях: бесплатная коммьюнити-версия и платный энтерпрейс эдишн. В большинстве случае будет достаточно Community-версии: она поддерживает и C#, C++, VB.NET и F#, а так же имеет возможность установки дополнений.- MonoDevelop ( http://www.monodevelop.com/download/ ) - самый юзабельный вариант для мака и никсов.- Visual Studio Code ( https://code.visualstudio.com/download ) - кросплатформенный полуредактор/полуIDE, есть возможность дебага под mono.- Project Rider - кросплатформенная IDE для шарпа от JetBrains, внутри решарпер со всем фичами, снаружи - idea http://download.jetbrains.com/resharper/riderRS-146.1908.exe - для Windows, .dmg - для OS X, .tar.gz - для Linux.- 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 Essentials7. Дополнительные инструменты для разработки на C#- LINQPad - сорт оф REPL, с возможностью быстрого подключения к БД и удобной визуализацией данных- dnSpy - декомпилятор, малоизвестный форк ILSpy, где реализована возможность модификации IL-кода прямо в EXE и DLL файлах, отладка IL-кода и много других фич для reverse engineering'а. Плюс няшные темы как в студии- dotPeek - бесплатный декомпилятор от JetBrains- scriptcs - для запуска C# кода как скриптов, возможность использовать как REPL8. Расширения для студии- ReSharper - одно из известнейших. Рефакторинги, умный автокомплит, настраиваемый стиль кода. Платный, но можно стянуть с торрентов- Supercharger - показывает "карту" с классами, методами и всем остальным сбоку от кода с возможностью прыгать по ним- Indent Guides - показывает вертикальные линии на каждом уровне отступов- Format document on Save - форматирует код каждый раз при сохранении документа- Code alignment - Выравнивает код по указанным символам. Удобно, например, при инициализации словарей или в перечисленияхОбзор Roslyn: https://github.com/dotnet/roslyn/wiki/Roslyn%20Overview Новые возможности C# 6.0: https://github.com/dotnet/roslyn/wiki/New-Language-Features-in-C%23-6ПРИНИМАЮТСЯ ПРЕДЛОЖЕНИЯ ПО ШАПКЕКод этой шапки: http://pastebin.com/cKKXYArsПрошлый тред тонет здесь: https://2ch.hk/pr/res/749549.html
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 и анализ дампов памяти в windbg15. Литература не по шарпу, но так или иначе связанная с языком- 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), SOLID18. Я не умею читать, что посмотреть?- 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
Перший
Можно ли как то реализовать просмотр твича, для получения всяких плюх(типо розыгрышей там, дропов в играх), без собственно обычного браузерного просмотра видоса? То есть без лишней нагрузки на комп. Ну типо накрутки смотрящих. Куда копать подскажи.
>>766142twitch api?
>>766145Есть что нибудь для примера с C#? Хуячил онли винформдесктоп приложухи, для БД. Слабо представляю как это заставить работать с API.
>>766177сорян, сам только с гугла пришел
>>766012СИ ШАРП КРАЩА МОВА ПРОГРАМУВАННЯ
Решил вкатиться в тестирование. Где то читал, что стоит сразу начинать с NUnit и забыть про дефолтный мсвский UnitTesting. Так ли это ?
>>766994а разницы-то
Поясните за ваш язык. Реально по сравнению с той же джавой вкатиться в программирование неофиту? В чем конкретно в основном состоит работа? Написание декстопных приложений под винду и игоры? Если начну учить язык, то смогу пролезть хоть на какую-нибудь начальную работу?Сам в университете немного учил шарп и джаву, по работе только писал скрипты на sas и vba + t-sql
>>767216Будешь писать корпоративные сайтики
>>767219Может быть я чего-то не понимаю, но почему корпоративные сайтики пишутся на C#? Чтобы автоматически интегрироваться-синхронизироваться с какими-нибудь ERP и прочими системами?
>>767223Потому что изначально в asp.net были веб формы, которые как фин формы, только нет. А это значит можно пересадить всех индусов разработчиков с десктопов на разработку новых тогда сайтиков без особых усилий и они будут выдавать нормальную скорость разработки. И не надо содомировать себя джяваскриптом тогда еще плохим. Время шло, асп менялось, но традиции остались
>>767231Спасибо за пояснения. Если ты работаешь с C#, то расскажи пожалуйста почему ты выбрал именно этот язык или стек технологий, а не какой-нибудь другой?
>>767223на самом деле, коммерческая разработка куда интересней и лутшее, но от индусских замашек никуда не денешься
>>767235Да потому что он охуенный. Сейчас то с одним c# конечно сложно если ты не только бэк пишешь, поэтому нужно js и html/css/bootstrap/angular
>>767223>Может быть я чего-то не понимаю, но почему корпоративные сайтики пишутся на C#?Потому что там есть WebForms (фреймворк для разработки сайтов), у которого есть следующие свойства:1. Если его изучить (изучается относительно долго из-за контринтуитивности и дроча на декларативность), то можно довольно быстро делать сайты. Быстро значит дешево и выгодно.2. Все сайты на WebForms уёбищны и однообразны, практически не допускающие кастомизации и модернизации. Они безнадежно отстали от современных web-технологий и в принципе не способы их догнать из-за неэффективной парадигмы.Это делает WebForms идеально подходящим для копроративных сайтов. Потому что копроративные сайты таковы, что ими пользуются только работники копрорации, причем принудительно, поэтому их внешний вид, дизайн и удобство нахуй никому не всрались, а только будут отвлекать от работы. Сайт должен быть тошнотворным, чтобы работник тратил на него как можно меньше времени, и въебывал на основной своей функции. Его уебищный вид не может снизить количество уникальных посетителей или продажи рекламы, потому что посещение принудительно для всех работников - это по сути часть их рабочего места, и никакой рекламы там нет.Для сайтов, которые предназначены для всего интернета, WebForms не подходит по той же причине - уебищности, из-за которой привлечь посетителей становится невозможно (они в отличие от работников копрорации являются свободными клиентами в конкурентной среде), и как следствие невозможно заработать на впаривании рекламы или еще какого-либо другого дерьма.
>>767250>Сейчас то с одним c# конечно сложно если ты не только бэк пишешьПисал копроративные сайты не используя JS вообще. У нас вся конторка так делала, вплоть до того что 90% быдлокодеров боялись JS как огня и не знали его.
>>767405Даже добавлю свою пасту со своим багетом от WebForms с тех времен когда я работал по найму и писал на этом говне.Пилю кулстори пары прошедших дней. Надо сделать контрол ASP.NET WebForms. Контрол среди прочего должен позволять загружать файлы. У меня была идея сделать загрузку файла на хуяксе, без рефрешей страниц. Просто потому что это заебись по юзабельности и скорости. В принципе это не требовали, наверное и не надо было даже пытаться. Вообще, многие вещи на ASP.NET лучше даже не пытаться, - только промучаешься, побаттхеришь и потратишь время, потому что они попросту невозможны или стоят неприемлемых затрат времени и сил.Итак, суть. В нормальных (в вебе нет ничего нормального, поэтому "нормальных" здесь условно) фреймворках такое делается через сабмит формы с файлом (этот изврат следствие того что аяксом нельзя аплоадить файлы из-за дебильности разработчиков браузеров), принятием ответа сервера в невидимый iframe (этот изврат уже как следствие предыдущего извращения - сабмита формы) и обработки этого ответа джаваскриптом. уже всё это показывает что сам html и все браузеры - говно, что в свою очередь говорит о том что в вебе есть целая традиция говноедства, особенно если еще вспомнить джаваскрипт и PHP. В ASP.NET всё получается еще более ебанутым. Чтобы засабмитить форму, нужно чтобы она была. Для этого её нужно сделать. ASP.NET уже имеет одну форму вокруг всей страницы, такова его ебанутая архитектура. В добавок к ней, замечательный HTML слово "замечательный" в данном случае в значении "полное говно" запрещает размещать форму внутри другой формы. Тем самым в ASP.NET фактически нельзя использовать тег form и как следствие аплоадить файлы асинхронно. Можно конечно разместить еще одну форму после формы созданной ASP.NET. Но только не в контроле, потому что ASP.NET помещает весь контрол в форму, и все формы в контроле автоматом окажутся во внешней форме, как следствие будут проигнорированы браузерами согласно ебанутому HTML. Создать форму из контрола динамически джаваскриптом внизу или вверху страницы (вне формы ASP.NET) - заведомый фейл, потому что разметка формы будет находиться вне основной вёрстки, внизу или вверху страницы. Можно было бы сделать эту форму невидимой, заполнить её джаваскриптом скопировав видимые пользователю поля которые он ввёл, и всё было бы заебись. Но это тоже не получится, потому что объект input file нельзя клонировать "в целях безопасности" как страдает безопасность если вы склонировали input file с файлом который указал сам пользователь понятно только ебанутым разработчикам браузеров подобно тому, например, как христианам понятно как женщина была сделана из ребра мужчины, в то время как ни один нормальный человек такой хуйни никогда не поймёт просто потому что он нормален, а не ебанут. Можно всю форму поместить в iframe, iframe может находиться в форме, а форма - в iframe. Но тут другой облом - с вёрсткой. Если на форме находится поле textarea, а оно там находится по требованию заказчика, то его ресайзинг мышью сразу выдаст наличие iframe (появятся скроллбары и ресайзинг будет ограничен iframe) и очень удивит заказчика почему же он не может нормально ресайзить это ёбаное поле textarea. Можно извратиться еще жестче, поместив форму с input file в iframe, а поле textarea расместить вне iframe, после чего при нажатии кнопки "отправить" копировать это поле в форму перед сабмитом. Я уж думал что это и есть решение моей проблемы, но тут внезапно фейл - на самом деле мне надо аплоадить не один файл, а два. Оказывается это может многое менять. Находятся они в макете в таблице в разных строках, и textarea находится между ними. Поэтому разместить их в iframe отдельно от остальной вёрстки не получится. Можно сделать два iframe, по каждому для каждого файла, и сабмитить их раздельно, принимать на сервере тоже как следствие раздельно, проверять что приняты оба, отправлять всю эту херню на клиент, проверять и там, предусматривать ситуации когда только один сабмит прошел успешно, а второй зафейлился, после чего удалять файл из базы, потому что он часть зафейленного сабмита, для чего нужно сделать механизм отслеживания фейловых файлов, для чего надо менять БД и всю работу с ней, одним словом - пиздец. Либо сделать вёрстку сверхебанутой и не по макету заказчика - разместить два файла рядом (которые по логике совсем разные и рядом быть не должны) - проще говоря, зафейлить ТЗ. Относительно элементарная задача, которая даже в относительно нормальных фреймворках решается довольно ебануто и дорого плане времени, в ASP.NET WebForms становится еще на порядок дороже и сложнее.Короче, няши, ASP.NET WebForms это форменное говно и никогда не пытайтесь сделать на нём нормальный сайт - всё равное не получится. WebForms предназначен не для этого. Он предназначен для быстрого клепания говносайтов в стиле конца 90-х с рефрешем всей страницы по каждому малейшему поводу, плюс многокилобайтовый вьюстейт в довесок. Ах да, забыл сказать что UpdatePanel не работает с input file. Может кому-то это не было очевидно и половину моего рассказа он считал меня идиотом не знающим "богатые" возможности WebForms.
>>766002 (OP)Блять. Какаяже Визуальная Студия душная программа. Мало того, что устанавливается по 100 лет, так ещё и постоянно какие-то ебаные ошибки при установке, невидимые ошибки при запуске, и БЛЯТЬ ЦЕЛАЯ СВАЛКА ГОВНА в установленных программах.
>>767409Ты - это я.>>767429Заплакал немношк.Хорошо что сейчас 2016.
>>767488У тебя винда от васяна или студия с торентов?
>>767494попизди еще, что это не такмимо-анон
>>767521Неосиляторы не осиливают
>>767250> поэтому нужно jsИнтерестно, а почему MS не сделает компилятор C# -> JS?Это же сейчас тренд (Clojure/Scala/Kotlin/GWT) что бэкенд и фронтенд пишется на одном языке.А они зачем-то в typescript вкладываются...
>>767488Тут на днях релизнулась стабильная XamarinStudio 6.0 со стильной темной темой и поддержкой C# 6.0Она стала заметно быстрее и плавнее.А еще в VisualStudioCode появилась нормальная отладка C# приложений.В Rider пока новых билдов не было (наверное интегрируют новый CoreCLR), но тоже что-то интересное выкатят.
Как правильно реализовать GetHashCode в IEqualityComparer<T> ?Хочу сравнивать такие объекты http://pastebin.com/3gEDDDzRЯ написал реализацию, но не уверен что это правильно http://pastebin.com/4DBfsM89
>>767620т.е. до недавнего времени Xamarin студия не умела в C# 6? MS VS же уже почти год как умеет.
>>767488Да вроде не все так страшно, из того что ты написал у меня есть только>ЦЕЛАЯ СВАЛКА ГОВНА в установленных программах
>>767617http://duoco.de/>>767653https://msdn.microsoft.com/en-us/library/ms132151(v=vs.110).aspx#Anchor_3Нужно больше проверок на null и GetHashCode должен все поля брать, судя по Equals
>>767659>duocodeИнтересно, какой там трэшак творится в более-менее сложных конструкциях.
>>767659>GetHashCode должен все поля братьНе понимаю как это делается, особенно если у меня будет класс с кучей разнотипных свойств.
>>767654В стабильной ветке - нет, в alpha/beta - да
>>767668возьми у своих свойств их хэш-коды и соотнеси их вместе, используя простые числа. это вроде бы стандартная практика. можно еще сдвиги использовать, но я не знаю тонкостей такого подхода
>>767661Ты когда нибудь видел JS в google search/gmail/google docs?Там JS давно на уровне байт-кода.У Google есть проект Closure Compiler который буквально компилирует JS->JS,так что потом без source-map уже ничего не поймешь.
Virtual member call in consturctorМне кажется, что я принципиально что-то делаю не так. Насколько неадекватна архитектура пикрелейтед, и как можно её улучшить?
>>767707Можно spritemap заполнять не в конструкторе, а в отдельном методе, посмотри builder pattern например.http://www.matthewedmondson.info/2012/08/virtual-method-call-in-contructor.html
>>766002 (OP)>Какую ИДЕ выбрать?Могли бы и про замарин написать, пользуюсь под виндой, зависимости нет, по производительности среда летает в отличии от VS
>>767990Мне xamarin.com только visual studio под винду предлагает скачать
сап, паrни. есть 2 решения и мне нужно перекинуть 1 класс с первого во второе, но этот класс еще создает обьекты других классов с первого решения.у 1-го решения уже в референсах лежит ссылка на 2-й и теперь мне надо сделать ссылку со 2-го на 1-й? Зацикливание!Вариант, типо, перекинь все нужные классы вместе с тем который перекинул - не вариант.Щито делать, дэсу?
>>768139Так вынеси все в общую dll
>>768139Сделать третье решение, и в обоих классах ссылаться на него
Sup, как мне настроить поведение combobox?Нужно чтобы в зависимости от четверти появлялся список из цифр зубов. Ну то бишь я выбираю допустим первую четверть, а мне выходит зуб с 18-11, выбираю вторую и в выборе только с 28-21.
>>768490с помощью контекста окна, событий OnPropertyChanged и ObservableCollection-членов. короче, велкомэ ту мввм
>>768491Блядство, а можешь поподробнее пожалуйста? биндинги здесь никак не помогут? Я не шарю в проге :с
>>768495С самим комбобоксом тебе делать почти ничего не нужно, только забиндить свойство ItemsSource на коллекцию в твоей ViewModel. Можно на простой IEnumerable. Далее, биндишь SelectedItem на свойство модели представления, которое у тебя за четверть отвечает. У него в сэттере уже вызываешь нужную логику загрузки списка.Собственно все, даже с event trigger'ами ебаться не нужно.
>>7684951) смотишь что такое мввм2) создаешь вью модель и имплементиш INotifyPropertyChnaged3) создаешь проперертю в классе "Четверть" и пропертю-список четвертей4) Хардкодиш лист зубов 5) Делаешь лист тех, которые надо отображать 6) Копируешь зубы из хардкожденой коллекции в ту, которую показывать надо на изменение проперти четверть 7) привязываешь вьюшку (то, что на скрине) к моделе представления
>>768503>>768505Спасибо, благородные доны. ViewModel это новый класс, где будут храниться четыре листа моих зубов?
Хлопци, жизнь занесла меня в такое болото, что мне нужно для курсовой сделать БД, оболочка к которой будет на сисярпе (а хули, я ничего больше не знаю). Сервер по требованию преподавателей должен быть на ms sql. И вот вопрос: стоит ли делать отдельное серверное приложение на шарпе, в котором будут находится sql-команды на выполнение процедур и который будет обеспечивать связь непосредственно между приложением-клиентом и sql-сервером? Или сервер на шарпе будет лишним звеном, и все sql-команды и адаптеры хуячить в клиентском приложении? Тогда ведь понадобится в клиентском приложении позаботиться о сохранности и зашифрованности передаваемой инфы, не перегруженным ли будет клиентское приложение? + В зависимости от некоторых условий, диктуемых клиентским приложением, предполагаются различные ответы sql-сервера, опять же, придётся все эти проверки делать в клиентском приложении, что опять же, ящитаю, будет лишним. Будет ли сильно замечаться потеря в производительности, если использовать промежуточный сервер на сисярпе, если приложение-сервер и сервер ms-sql будут находится на одной физической машине?Если всё таки стоит делать отдельный сервер на шарпе, как его лучше реализовывать (имею ввиду через какие классы/технологии/фрэймворки/способы коммуникации), учитывая, что будет происходить обмен не только текстовой инфой в большом размере, но и фото.
>>768509Если на одном компе, преподу показать - нахуй тебе сервер?
>>768510Но в реальной жизни никто из десктопа к БД не коннектится(кроме SQLite)
>>768510Ну мне не совсем преподу показать. Это не только курсовая, но и приложение для одной организации.
>>768509>Будет ли сильно замечаться потеря в производительности, если использовать промежуточный сервер на сисярпе, если приложение-сервер и сервер ms-sql будут находится на одной физической машине?Забыл уточнить, сервер в любом случае будет располагаться в локальной сети, ибо скорость передачи и трафик не безлимитный.
>>768509Сделай сервер с помощью wcf например
>>768509Что ты понимаешь под отдельным приложением? Чем тебе не подходит традиционная 3-tier архитектура с уровнем доступа к данным? Алсо, не надо выполнять напрямую sql из кода. Даже параметризованные запросы только в легаси встречаются. Используй ORM. Только дженерик репозитории не используй. Это рак и за такое нужно клавиатурой по ебалу бить. А вообще, судя по твоему посту, у тебя нет представления о будущей архитектуре вообще. Пойми сначала, что нужно сделать. Потом прочитай про трехуровневую архитектуру.
>>768530> Только дженерик репозитории не используй. Это рак и за такое нужно клавиатурой по ебалу битьне, ну чё ты, а
>>768503>коллекциюЧетвертей или зубов? Зубы должны располагаться в листах четвертей в ViewModel?
>>768530> Используй ORM. Только дженерик репозитории не используй.А если у меня Xamarin в котором нет EF вообще, а есть только ссаный "Sqlite.query<T>(...)"?
>>768550ток делай параметризованные запросы, не втуляй, шо юзер послал, в запрос
имеет ли смысл углубляться в c# и пробовать пилить с его помощью приложения для androida? или забить и учить java
>>768530Если не дженерик репозиторий, то что? Не могу догнать
Доставьте реализацию алгоритма AKS на шарпе, чтобы мог проверять числа любой длины.
>>768550Там dapper можно заюзать.
Как устроиться джуниором если есть ВО, но нет особо никакого опыта?Рассылал резюмешки по компаниям, даже на интервью не пригласили, мрази. Посоветуйте чего, посоны.
>>768864Няш, тебе сюда >>768960 (OP)
а может у кого есть вмшмастер на Resharper 2016?
Шарпаны, есть кто может вменяемую верстку для UWP на ХАМЛе замутить за определенный бюджет? Или лучше на фрилансах всяких поискать
>>769422На русракере в комментах вроде была ссылка на сервер лицензий
>>767429Сука, вспомнил
>>768864Слишком быстро ты выхлопа какого-то ожидаешьЯ 3 месяца резюме рассылал каждую неделюбыло всего лишь 3 собеседования, на третьем взяли на работу.
хлопцы, пытаюсь создать клиент-серверное приложение, и тут встал вопрос как организовать общение между клиентом и сервером? читаю сейчас на рсдне да профессоре вебе статьи про NetworkStream и TcpListener, TcpClient и прочие сокеты, но заметил, что статья на рсдне датируется 2005 бородатым годом. не устарела ли эта технология связи, может уже появилось что то новое, на что лучше обратить внимание?
>>768648ну ответьте же
>>768648Говорю с дивана, но учитывая схожесть синтаксиса обоих сисярпа и джавы, я бы точился под то, под что больше существует готовых фреймворков и апи для андроида.
>>769523стОит>>769522где физически будут находиться клиент и сервер? можешь, конечно, обойтись сокетами, можешь WCF развернуть
>>769523в смысле, имеет, лол
>>769528вообще, предполагается следующее развитие событий: в основном, клиент и сервер будут находится в одной локальной сети, но в исключительных случаях предполагается подключение к серверу через интернет.
>>769528дак что там насчёт сокетов, они уже устарели, и появились более функциональные технологии? и что нужно читать о WCF в контексте моей задачи?
>>769532Не для того .net делали, чтобы в сокеты пороться постоянно. В контексте твоей задачи тебе нужно просто прочитать про wcf, например у троелсена. А лучше сразу web api!
Sup, я в проге новичок и у меня есть два серьёзных вопроса. 1. На скрине у меня 32 комбобокса, которые формируют зубную формулу, в каждом по 9 вариантов статуса зуба. Как мне не плодить все эти статусы в каждом комбобоксе? Ну вы понимаете, у меня в каждом комбобоксе по 9 вариантов и все они одинаковые. 2. Работа с заполнением вордовского документа из шаблона ворда. Короче, в одном окне я заполняю одну страницу в ворде, перехожу в новое окно, заполняю форму и пытаюсь внести изменения в документ. Все вылетает на эксепшене
>>769610Так делаешь у зуба СтатусЗуба в виде enum'а например, делаешь коллекцию зубов и ехал биндинг через биндинг.Проверь свойсвто ErrorCode исключения.>Kursach.exeВышли на новый уровень
Шарпач, объясни в чем профит передавать StringBuilder в метод с использованием слова ref? Сегодня увидел такую штуку на работе, но не смог понять в чем космический эффект.
Посоны, а последнюю книгу Албахари C# 6.0 in a nutshell где можно взять на ингрише? Я бы заплатил 50 бачинских и купил, но сука жаба давит. На русеке не надо.
>>769631Совсем охуел? На рутрекере.>>769630Ну так посмотрел бы зачем там ref то используется. Но за такое пиздить надо.
>>769636И правда охуел. Как-то не подумал там искать. Извиние.
>>769616таак, а куда впилить коллекцию enumerable? создать под неё класс? биндингом привязать объект класса к каждому комбобоксу?
>>769643Во ViewModel твоей вьюхи конечно же! Если ты не читал про mvvm, то сейчас самое время.
>>769644А какой биндинг использовать, чтобы получить коллекцию из класса?
>>769673Все, разобрался, спасибо анон.
>>769630>>769636ну чтобы сделать varName = new StringBuilder, очевиднонасчет бить не уверен, если в разных методах формируется строка по ходу выполнения какого-то куска. ну не знаю короче
>>769771StringBuilder и так >Represents a mutable string of charactersа тут еще ref этот ебаный.>ну не знаю корочеВ этом и суть, ref только запутывает код, и пиздить таки нужно.
>>769782ну локальная переменная же. если ты в методе присвоишь новое значение ей, то из метода без реф оно уже не выйдет
>>769794Так нет причин менять ссылку на StringBuilder, можно поменять его состояние. Если функция хочет что то вернуть, она должна просто это вернуть.
Вкатываюсь в мвц после вебформса.Поясните, как здесь кэшировать полученные данные? В вебформсах всегда пользовался SqlDataSource и CacheKeyDependency. Вот допустим у меня естьpublic ActionResult Customers_Read([DataSourceRequest]DataSourceRequest request){var list = DAL.GetAllCustomers();return Json(list.ToDataSourceResult(request));}Куда мне запихать list, чтобы не получать из БД каждый раз овер 9000 записей при любом действии с гридом? И как их таки получить заново при нажатии кнопки refresh?Во всех туториалах куда ни глянь ебаный EF, так что приходится спрашивать на двощах. Всем бобра заранее.
>>769830> 2016 год> .NET, ASP.NET MVC, EF, MSSQL оффициально поддерживают Linux/macOS> EF уже дошел во версии 6.X и теперь его переписывают с 0> Кто-то продолжает насиловать труп и использовать подходы из 2000Интерпрайз такой интерпрайз (небось еще и гос контора)
>>769865>M$SQL Дорого же. И вообще, ОРМ нинужны, у меня от запросов, которые они генерируют, глаза вытекают просто.Выдаю жсоном все данные сразу, но пейджинг, сортировку и фильтрацию делаю на клиенте, все работает как мне надо, считывает заново только при рефреше.
>>769610>ФАЙЛ ПРАВКА ВИД СБОРКА ПИЗДЕЦ
>>766002 (OP)Здравствуйте, шарпобояре. Я так понимаю, на C# можно делать всё, от консольных хеллоувордов до игор с графоном. Какое из направлений считаете наиболее перспективным, чтобы моё увлечение программированием стало приносить какую-то денюжку, не заглохло в ближайшие 5 лет, а может даже и помогло найти постоянную работу хотя фуллтайм работа в офисе мне нахуй не всралась, если честно. Я вот Пахомова и Подбельского почитал немного 3 книги, дальше думаю копать юнити или андроид. Что посоветуете?
>>770056> Что посоветуете?1) Перестать задавать такие вопросы, они всех заебали еще на 10 перекате2) Пройти сюда >>769498 (OP)
>>770089>всех заебалиИди нахуй сразу. Твое настроение никого не ебет.
>>770124Попробуй почитать шапку.
>>770056Юнити и веб.Есть еще ормки на wpf.
>>770134> Есть еще ормки на wpf. Црмки
Кто что может сказать о жизненном цикле ресурсов на платформе .NET? Гугел молчит, по крайней мере у меня.
>>766002 (OP)ЗдрастеДо какого уровня надо читать книги по Сишарпу, чтобы уметь писать типичные и простые вещи на Юнити?К чему не прикасаться?
>>770385Троелсон, синтаксис и ооп
>>770398>ТроелсонБля, книга на 1300 страниц.Я как бы хочу знать Юнити, но не настолько.
>>770405прочитай части 2,3,4 и всё
>>770406Но зачем читать 2 часть, если там определения из 1-й?
Анон, молю тебя, поясни за mssql в шарпах, пол дня их ковыряю никак не могу передать значение переменной в базу, оче хочу засунуть её туда не прибегая к sql языку через query запросы, можно это реализовать?
>>770134Добра!
антохи, для клиент-серверного приложения внутри локальной сети что лучше использовать - именованные трубы или tcp-сокеты (или что там у tcpListener и tcpClient)? под "лучше" понимается способность быстрее передавать с клиента на сервер и обратно большое количество текстовой информации и изображений, также приветствуется гибкость (в плане различных настроек, типа приоритет передачи именно по этому каналу/сокету и т.д.) и возможность шифрования передаваемой инфы (да да, нахуй это нужно внутри локалки, но всё же может понадобится для некоторых ОЧЕ важных данных)inb4: читай WCF мудак. блят, я бы с радостью его освоил, но заглянув в интернет и книгу троелсена, я увидел, что читать по нему столько, что я насрал как конь со страху, честно. учитывая что время поджимает меня оче сильно, а в WCF придётся как мне кажется долго ковыряться в поиске методов реализации интересующего меня функционала, я пока что решил всё же использовать либо tcp-сокеты либо пайпы, но не могу определиться, что из этого лучше, ибо на форумах в сообщениях за различные даты встречал разные противоречивые мнения. вот хочу современные мнения узнать. или всё таки не выёбываться и потратить пару дней на дроч WCF, если он того стоит?
>>770526Ебаный Entity Framework>>770534Ты охуел штоле? Тебе такой то soap выкатили, дали инструменты, тебе надо просто сгенерить проксю и инвокнуть ебаный метод. Троелсен - 50 страниц, ну охуеть теперь. Но в целом можно web api выучить за 10 минут и сделать уже
Когда мы делаем Web API, нужно ли проводить валидацию на стороне сервера при POST или PUT запросах?В MVC я делал это, наследуя ViewModel от IValidatableObject.Есть мысль передавать в качеств е параметра в акшн-метод не саму сущность, а ее dto, и dto так же наследовать от IValidatableObject.Дайте, пожалуйста, совет.
Вместо репозиториев с EF использую вот такую залупуhttp://pastebin.com/DPShpHjEВсе правильно делаю?
>>770817> переименовал репозиторий в DataService и радуется
>>770812естественно, валидацию проводить нужно. можно просто использовать ValidationAttribute-ы для пропертей твоей модели
Есть тут .net-анон с опытом валидации на WPF с правилами чуть сложнее, чем "показать error template, если инпуты пустые"?Вкратце: есть форма логина и есть требования по валидации. Кроме очевидных пустых инпутов может быть еще неправильный пароль, юзернейм и так далее, которые нужно подкрашивать. Логином, ровно как и самой валидацией, у меня занимается не модель представления, а другая либа вообще. Как лучше организовать моменты хотя бы тех же неправильного юзернейма и пароля? IErrorDataInfo говно ебаное, с ним нормальную валидацию не сделаешь. Инпутов на форме хоть и немного, но не хочется на каждый заводить HasError свойство, чтобы к нему забиндить error template. Или других способов все равно нет?
Здравствуй шарпач, мне нужна твоя помощь.Есть один говнокод, который мне волею судьбы нужно поддерживать. Проблема в том, что сроки ограничены, а код работает не быстро. Совсем небыстро. В начале прога начитывает две таблицы из двух разных баз sql с двух разных серверов. Потом ебется с ними создавая зависимости и только через 40 минут можно собственно что то отлаживать. Наебавшись с гуглом я сократил это время примерно до 25 минут напихав plinq во все поля. Но все ровно есть куча мест, в которых процесс грузит систему на 25% максимум (1 ядро из 4).Два особо проблемных куска это собственно начитывание данных из БД. Выглядит приммерно так:while (reader.Read()){ lst.Add( new Customers() { customer_id = (int)reader.GetValue(0), address = (string)reader.GetValue(1), region = (int)reader.GetValue(2), });}Хуярится все это через OleDb. Я вообще хз что тут можно оптимизировать.Второй момент это работа с листами. Как я понял операции удаления из листа нельзя распараллелить. И это длится минуты. Я хз что с ними можно сделать, кроме как захуярить в массивы и удалять через циклы.Есть какие идеи?
>>771450Вангую что каждый reader.GetValue это отдельный запрос в базу. Нельзя как-то сделоть через IQueryable и LINQ?
>>771450Сколько же у тебя записей в таблицах?
есть у нас c#и есть часы на с#зачем в часах используют строку Convert.ToInt16 ? что это значит?например,h = Convert.ToInt16(Console.ReadLine());
>>771533msdn
>>771603and what?гугл и справочники обыскал, нигде толкового ответа нету
>>771479> Нельзя как-то сделоть через IQueryable и LINQ? ХЗ, я в чтении из sql не силен. Если есть идеи буду благодарен за наводку.> Сколько же у тебя записей в таблицах?В сумме что то около полумиллиона.
>>771479Это не отдельный запрос
>>771533ну тип кароч приобразуит в шарт страку))
>>771450заюзируй Hashtable вместо листа. вродикак, удаление там шустрееhttp://theburningmonk.com/2011/03/hashset-vs-list-vs-dictionary/
Аноны, раньше не занимался программированием, но по долгу службы мне оно нужно и я решил вкатиться. Нужно научиться писать плагины для приложений Autodesk, которые облегчат мою работу. С чего мне начинать? Я примерно прикинул что и как должно работать, нашёл API по интересующему меня продукту, теперь осталось всё это притворить в код. Сделаю оболочку на WPF, остальное нужно написать. Так вот, как учить C#? Например мне нужно что бы приложение делало "это". Я забиваю в Гугле: как сделать на С# "это" и т.д. Или есть методы проще и эффективнее. Прошу совета.
>>771829> приложение делало "это"ну какт слишком размыто. интернеты не смогут ответить на все вопросы в такой манере. есть говнокниги в стиле "саветы праграмиздам", но и они не покроют в достаточной мере ответы на интересующие тебя вопросы. как правило, это знакомство с основой языка (+ некоторые внутренние части), плюс книги/статьи по шаблонам, архитектуре приложений и прочей хуите
Спокойно пишешь ASP.NET MVC сайтик на coreclr DNX и тут бац (спустя пол года) выходит RC2=> Начинаешь перекатываться (ведь DNX стал deprecated) =>Хуяк и перестали работать DllImport (юзаю нативную библиотеку для сжатия картинок).https://github.com/dotnet/cli/issues/3105=> ОК перекачусь c CoreCLR на MONO =>Хуяк, а MONO больше не поддерживается, на Linux/macOS теперь только CoreCLRhttps://github.com/dotnet/cli/issues/2576#issuecomment-211625062=> ОК откачусь на DNX =>Хуяк, а DNX закрыт и установщик выпилен
>>771846Так лол, запакуй либу в nuget пакет и ставь локально. dotnet pack и все.
>>771834мне например нужно, что бы моё приложение брало данные из таблицы Excel, и выдавало мне нужный результат в моём приложении в табличном виде, что бы были фильтры и сортировка. Значить гуглить DataGridView например?
>>771880ну плюс юзадж OleDb при работе с экселем, наверн.
>>771882ок, буду тыкаться сам плюс сюда ответы задавать.
>>771884под твой вопрос интернет уже придумал ответ, кстати говоря
>>771888отвалилась ссылка http://stackoverflow.com/questions/16293643/import-excel-to-datagridview
>>771848Думаешь это поможет при запуске на Linux/macOS?
>>771921А зачем тебе пакет там? У тебя при билде будут те же dll'ки.
>>771943 >>771846Ох, анончик в CoreCLR RC2 все РАБОТАЕТ, это я протупил.Забыл что у этой либы были динамические зависимости на другие (и без них она не загружалась в память).Через brew установил все зависимости и ВСЕ ЗАРАБОТАЛО.
>>771889благодарю
Как добавить в проект проект модульных тестов в VS2015, именно не создать, а добавить?
>>772620%solution name% context menu -> Add -> Existing project
Поставил тут сеюе решарпер, а он мне во всех foreach циклах начал ругаться на переменную:Access to foreach variable in closure. May have different behavior when compiled with different versions of the compiler.Начал гуглить, но так нихуя и не понял нужно мне что то менять или забить хуй?
>>773723Нахуй тебе циклы то?
>>773739Чтоб обработать все элементы массива по очереди.
>>773752.Select() ?
>>773762И что я буду им делать?
>>773776Элементы обрабатывать
>>773788Так мне нужно каждый по очереди. Как это сделать селектом без цикла?
Так ты бы код то показал, а то нипанятна жи нихуя
>>773795Код на работе. Там целый проект. Есть один foreach и в нейм пара сотен строк. Вроде все работает, но решарпер ругается описанным выше длинным словом. И нихуя не понятно имеет его мнение смысл или нет.
>>773798В целом забей хуй, если работает.
>>773723Зависит от компилятора. На одном может быть одна и та же переменная на каждом шаге цикла, т.е. с ссылочными типами можно на грабли сесть. А на других на каждом шаге новая переменная делается для текущего элемента. Поэтому решарпер и кидает warning
>>773932Примерно как то так и в гугле написано. Но мне бы хотелось понять, как дела обстоят именно у меня. Как я понял, мне нуждно чтоб делалась каждый раз новая. Но как в этом убедится?
>>774023foreach (var a in ...){ var innerA = a;useInnerA(innerA); }
есть у кого-нибудь линк или методика построения графа дорожных/пешеходных переходов/~ездов/дорог из данных гугле(или не только)мапа?из гугл апи, которые хоть как-то подходят под эту задачу, тольк Directions или SnapToRoads. но они, по сути, выполняют задачу поиска пути по имеющимся данным, а я хочу эти данные сконструировать для города/региона/страны
Пацаны, как думаете, сколько фронт JS макаке потребуется времени, чтоб вкатиться?
>>774263Пару недель. Может больше. Может меньше.Смотря на сколько ты макака.
>>774268а стоит?
>>774279А это уже ты мне скажи. Нахуя оно тебе?
>>774285ну хуй его знает ёпта
>>774285на работе получил такое предложение, учить C#. у меня все на нем кодают, думаю легко пойдет, помогут если-что.
запилите адрес конференции
>>775338Какой?
Посоны, что на с# пишут-то? Нужно что-то из этого?1. Wpf для десктопа?2. Аспнет ? (Да, нужен)3. Ксамарин для ведроида и оси?Во что вкатываться?
>>775368не поверишь, но на всем этом пишут и все нужно
>>775368> 1. Wpf для десктопа?Ксамарин для десктопа. Нахуй ненужно.> 2. Аспнет ? (Да, нужен)Сайт на шарпе. Идея хорошая, но сосет с проглотом у пхп.> 3. Ксамарин для ведроида и оси?Рисовать треугольные квадраты и овальные пятиугольники вместо кнопок с изогнутым текстом. Если освоишь, то хорошо. Если нет, похуй.
>>775416>Ксамарин для десктопа. >сосет с проглотом у пхп
Суп.Вот есть у меня listview, задаю ему итемссурс - коллекция пользовательских объектов. У этих объектов есть своя коллекция ещё объектов, и надо при SelectionChanged в listview рядом рисовать treeview по коллекции, которая лежит в выделенном пользовательском объекте.Мне прямо через код менять итемссурс для тривью при SelectionChanged?
>>775809если я не ошибаюсь и это WPF, то тебе через код такие вещи менять не нужно. ну, если ты не пишешь в стиле button1_Click
>>775812Да, у меня wpf и mvvm, и всё норм до момента, когда надо treeview отрисовывать по селекшну в lv. Непонятно, как тут сделать красиво
Бандосы, есть какой то метод, в котором присутствует шаблонный тип Т. дак вот, как мне кастовать массив байт к этому шаблонному типу. К примеру,byte[] byteArray=new byteArray[unknownsize];T Rezult = (byte[])byteArray;Разумеется, код выше нескомпилируется. Я было думать в сигнатуре метода указывать "where T:IConvertible", но судя по документации, имплементация IConvertible позволяет кастовать к шаблонному типу всякие там инты, стринги и прочую шушару, но в моей ситуации типом Т может быть только один мой кастомный enum, или System.Data.DataTable. Как быть, двощ, куда копать? инбифо землю себе рой мудила
>>775824Ты какую непонятную вещь хочешь сделать.зачем тебе кастовать к byte[] ? Хочешь какие-то специфические для byte[] вещи сделать? Если да, то:byte[] result = (byte[])byteArray;byte[] result0 = result.Reverse() // для примераT Rezult = (T)result0;Конкретно я делал так:Data[j] = (T)((ICloneable)Data).Clone();где Data это T[].
>>775815ну тут вроде бы как у listView2 идет привязка к датасорсу модели, который поменяется (и просигналит OnPropertyChanged либо другим каким-нибудь ивэнтом) при изменении выбранного айтема для listView1>>775824ну прям совсем универсально не выйдет, тебе нужна какая-нибудь абстракция, которая может создавать инстанс имени себя из byte[]
>>775829Я хочу кастовать не К byte[], а массив byte[] хочу кастовать к шаблонному типу Т>>775830то есть типа я создаю абстрактный класс AClass, в котором я делаю оператор public static explicitit operator AClass (byte[] byteArray){}
>>775834тьфу блять, не дописалто есть типа я создаю абстрактный класс AClass, в котором я делаю оператор public static explicitit operator AClass (byte[] byteArray){/проверка условий, по которым возвращается тип, которым может быть Т?/}
>>775834ну можно без explicitit operator (и даже лучше в таком случае), а просто объявить интерфасе с единственным методомinterface ICanBeConvertedFromByteArray{ICanBeConvertedFromByteArray GetValue(byte[] array);}ну, в любом случае, к T ты не приведешься. только после выполнения вышеуказанного метода и явным кастом с потенциальным InvalidCastException
Посоны, вот рисую на WPF, у меня например окно 1920х1080(например), на нем там элементы и все такое. Открываю проект на ноутбуке, там 1368х768(или что-то вроде того). А форма в 1920х1080 и соответственно, все что на форме не помещается не отображается снизу(по бокам все нормально) и нельзя вниз проскролить форму, вопрос - как добавить прокрутку, чтобы можно было вниз листать?
>>775975в ScrollViewer запхай родительский контейнер
Сап, шарпач.Дано: wpf-приложение. Использую windowchrome для красивой nc. Вопрос: что сделать с resize и move в системном меню, чтобы было заебись? Просто так они не работаю. Если убрать их из меню через винапи, ресайз и мув самого окна не работают, задисэйблить их тоже не вышло.
Собираюсь понаехать к одной тянке погостить и решил установить ей кейлоггер. Не будем обсуждать моральную сторону вопроса, а сугубо техничную. Писать буду на си шарпе, т.к. больше нихуя не знаю. Какие задачи:1) Перехватывать нажатия всех клавиш - примерно я представляю как сделать.2) Записывать все в текстовый файлик, отправлять на фтп - тоже знаю как.Примерно в таком виде, дешевом и сердитом, будет работать? Я ничего не упускаю?Что нужно еще:1) Как-то сообщаться с сервером - не знаю как сделать. Хотя когда-то писал на шарпе клиент-сервер какой-то.2) Обновлять мое приложение тихо - самый сердитый способ который мне видится: проверять есть ли на фтп нужный файл с приставкой new - скачать его, запустить, выйти.
>>776699Съебал быстро решительно
>>776699работать будет с загрузкой проца на 50% для процесса (для современных процессоров, возможно, цифра будет поменьше)а так, пошел нахуй
>>776699+ к >>776711> есть ли на фтп нужный файл с приставкой new - скачать его, запустить, выйтивспоминаю ебалу, которую мы ну, не совсем, я в разработке этой идеи участия мало принимал в свое время на производстве придумали для обновления клиента. тоже подобное говнище, аж взгрустнулось но ты не забывай идти нахуй, к слову так
>>766002 (OP)Жить можно, но как-то грустно.Может в C# 7.0 добавят :\
>>776722это же и есть тот самый pattern-matching, так жэж?
>>776711>работать будет с загрузкой проца на 50% для процессаСхуяли, дурачок? Написал уже отправку всех нажатий в текстовый лог, полет нормальный, проц не грузит.
>>776737как отслеживал нажатия?
Хе-хе
Как подсветить пустые поля на формочке по онклику? wpf, это ведь как-то через триггеры делается? как?
>>776766Само хреновое что делегаты не конвертируются к джерик-делегатам (Func/Action).Хочется обмазаться функциональщиной (без F#) и приходиться везде таскать крокодилыFunc<string, Func<string, Task<string>>, Action<List<Item>>>Может они хотя бы алиасы для этого заведут как в котлине.
Анон. Работаю разработчиком где-то между джуном и мидлом. До этого работал админом при команде разработчиков, поэтому некоторые вещи знаю, но где-то есть пробелы. Всю разработку осваивал сам по видеурокам + троэлсон. В общем есть набор книг, в каком порядке читать?C#_6.0_in_a_Nutshell.pdfC#_in_depth.pdfCLR_via_C#.pdfLINQ_для_профессионалов.pdfВнедрение_зависимостей_в_.NET.pdf
>>777369лол, тебе же все надо усвоить, так читай все подряд, че не понятно будет, прочтешь в другой книге из перечисленных или в интернете.
Сап, прогач, оче сильно нужна твоя помощь, как установить коннект к проксе и пересылать через неё ВСЕ in/out, а не какие-то конкретные, на проксе также также стоит логин/пасс. Выручай анон, с меня как обычно
>>777402Идея неплохая, канешь, но всё ещё считаю что знание Рихтера переоценено. Не думаю, что кому-то кроме сеньоров это реально пригодится в разработке. А мидлам и C# in depth пойдёт.
Анон, а почему у меня вижак ругается, что я чё-то там скрываю?Если кратко, то всё вот так:abstract class A{ public static bool q;}class B : A{ public static bool q = true;} как мне сделать, чтобы вижак не ругался?
>>7774661. оставить q только в одном классе||2. изменить регистр в одном из случаев
>>777487Но я хочу сделать один родительский класс, и несколько дочерних, но чтобы в дочерних было одинаковоназывающееся статичное поле.Можно это как то сделать, кроме варианта объявить в родительском абстрактном, а в дочернем уже в конструкторе задавать значение?
>>777493статический член класса не может быть абстрактным
>>777495>Можно это как то сделать, кроме варианта объявить в родительском абстрактном КЛАССЕ, а в дочернем уже в конструкторе задавать значение?
>>777500СДЕЛАТЬ НАРМАЛЬНА БИЗ ТАКОЙ ВОТ ЕБОЛЫзачем тебе вообще такой изврат? чем не устраивают абстрактные члены?
>>777087Хз, есть IDataErrorInfo, но он говно ебаное. Я вот не придумал, как подсветить конкретный инпут без введения доп. свойств типа "...HasError" и через дататриггер вешать на инпут с ошибкой эррор темплейт. У меня всего три инпута на форме и, наверное, именно таким путем я и пойду, хоть мне не нравится идея шести свойств на три инпута. А вообще, впф ссанина лютое и говно от аутистов. Жаль, что лучше в майкрософтмирке нет.
>>777581не лучше вместо удвоения количества свойств использовать какой-нибудь комплексный дженерик тип и с него брать статус ошибки/значение?
>>777529всё, я понял, спасибо, мне оно не нужно
Пиздеец, я молча никого не трогая разрабатывал фронтент отдельно, в атоме на ангуляре, с галпом,йоманом, scss и прочими ништяковыми инструментами верстал и манипулировал запросами с няшным $resourse, как тут же недавно поставили задачу, эти бекендщики пересесть на studio professional, где бек и фронт разом выплевывается, какой то блять Razor, какая-то ебанутая система сборки, и заставляют учить это все, аргументируя это тем что нужно будет разрабатывать отчеты, на стимулсофт, я поглядел это вообще какой-то пиздец. Я с# нихуя не знаю. Что делать ананасы?
>>777989Уволняйся
>>777989Беги оттуда.
>>777989Вот так нужно писать! Пиши-пиши-пиши-пиши! Пиши сайт, блядь!https://www.youtube.com/watch?v=J7aStGi3hE8
Народ, пришёл к вам спросить, где ж ещё подскажут да поделятся. Отучился в универе не так давно, устроился в небольшую компанию связанную с разработкой систем для менеджмента на с#. Порой были задачи на производственные нужды. Не суть. Вопрос в чём: все, кого я знаю с универа и кто программирует на с# съебались в штаты в банки или работают у нас никем/непоспецухе/планктоном. Меня это заебало, если честно. Можно было бы попробовать уехать и работать в интерпрайзе, связи есть, но ебал я такую жизнь. Стоит бросать прямо сейчас и менять язык/специальность или на c# можно найти что-то интересное? Почему у крестов такой выбор, а шарписты сосут хуи в бизнесе?
>>778094> где ж ещё подскажут да поделятсяВыпиливайся петухан.
>>778100рано, долгов наплодить не успел
>>777989Слабо себе представляю как фронтендщик будет лезть в Razor. Razor это инструмент бэкендщика
ВСЮ ЖИЗНЬ БУДЕТЕ КЛЕПАТЬ ВЕБПАРТЫ ПОД ШКОНКОПОИНТ, ПЕТУХИ!!!
>>770434Ну не читай тогда. И так смотрю умный дохуя.
>>766002 (OP)Как в юнити изменить шаблонный код новых скриптов на C#? Заебался уже каждый раз одно и то же руками править. Если что, привязка к VS 2015.
>>778631А погуглить никак?C:\Program Files\Unity\Editor\Data\Resources\ScriptTemplates
Посоны, волею судеб мне сейчас приходится учить и кодить на Silverlight. Понятно, технология мёртвая, все дела, но даст ли мне его изучение какой полезный опыт?
>>779373mvvm же
>>779383Но это же и применятся только в сильверлайте. ну, в впф ещё.
>>779395ну прям-таки толькособственно, это и будет полезный опыт. или тебе не?в любом случае, в веб-приложении костяк составляет все-таки бекенд. если тебе дали только лайауты и XAML ковырять, то пичаль. если же ты делаешь дела и в BLL, то какая хер разница, на чем писать? разница-то есть, но не суть
>>779395> MVVM применяется только в Silverlight и WPFТы серьёзно? В большинстве случаев любой сложный интерфейс делают через MVVM. На том же фронтенде для этого используют Knockout и Angular (на реакте честно говоря хуй знает, не трогал его).Если будешь потом прогать под мобилки, то для шарповского Xamarin.Forms (не советую его использовать, он довольно сырой ещё) тоже как правило используют MVVM либы MVVMLight и MVVMCross.
Объясните как правильно именовать переменные,функции и прочее в шарпах? ВерблюдСтиль или как то иначе?
>>779775зАбОрЧиКоМ)))
>>779778А _ у прайват членов и т.д.? Названия чего начинаются с большой буквы? Давай подробнее
Хочу собрать устройство, на мк, с питание от усб компа, как получить время системы, через усб, в пару строк?
>>779775Все названия пространств имен, классов, интерфейсов, енумов, структур, методов, свойств, публичных полей - PascalCase. Для приватных полей и локаьных переменных - camelCase. Символ _ (underscore) выбрось на помойку и забудь, уродство то еще. Интерфейс должны начинаться с символа I (IEnumerable), при наследовании о класса, в названии нужно сохранять название класса, от которого наследуешь. HomeController : Controller, ImportOperationStatusJsonParser : JsonParser Никогда не используй венгерскую нотацию, новояз и прочие сокращения. Описывая бизнес-логику, названия для переменных, свойств, методов должны исчерпываще описывать, зачем они нужны и что они делают. То бишь код типа:var rolesExceptRelatedToUser = await userService.GetRolesExceptRelatedToUser(user); должен вызывать для cисярппрограммизда увлажнение в трусах.
>>780478quickfix точнее дажеvar rolesExceptRelatedToUser = await userService.GetRolesExceptRelatedToUserAsync(user);
>>780478А чем плох underscore? По-моему удобно и всегда видно что поле приватное и не локальная переменная.
>>780481А у нас пишут:userService.GetRolesExceptRelatedTo(user); Но в целом ты прав, да.
>>780519Нет в стандарте, значит нинужно.
>>780519Потому, что в сишарпе стоит избегать перловщины, язык изначально спроектирован так, чтобы не было кучи спецсимволов. Тебе руби тогда нужен, где есть полный набор из var, @var, $var и _var. Я бы даже сказал, что комментариев вообще-то тоже в сишарпе стоит избегать. Надо использовать либо встроенную документацию, либо писать такой код, чтобы не нужны были комментарии. Иногда бывает набыдлокодишь огромный метод, абы чтобы как-нить работало на скорую руку, а потом еще сидишь с помощью решарпера все это дело по маленьким методам рефакторишь. >>780544Если писать из принципа VerbrNoun, VerbNounAsync, то опускание User выглядит, будто тебе букв не хватило.
>>780478>GetRolesExceptRelatedToUser(user)У вас абстракция протекла
>>780478А протектед поля и переменые? А также протектед и прайват методы как?
>>780804
>>780804Приватед поля с маленькой, остальные с большой. Свойства и методы всегда с большой.
>>779931Системное время компа передать на мк или время контроллера передать на комп?
>>780983А в принципе похуй, тут для приема/передачи на комп юзаешь SerialPort и норм. Он с байтами работает, так что выбери какойнибудь протокол для связи мк и пк (модбас например). Но это если чтото серьезное думаешь делать
>>780817>>780566А тут вот с _ прайват поля называются.И кому из вас верить
>>781003https://msdn.microsoft.com/en-us/library/xzf533w0(v=vs.71).aspx
>>781015В документации они пишут https://msdn.microsoft.com/en-us/library/ms229045.aspx>DO NOT use underscoresВ их гитхабе>private readonly IModel _model;https://github.com/aspnet/EntityFramework/blob/dev/src/Microsoft.EntityFrameworkCore.Relational/Query/ExpressionVisitors/RelationalEntityQueryableExpressionVisitorFactory.cs
дублирую из /webКотаны, хелп. Есть вот такая страничка- в ней можно загружать изображения и выбирать из списка уже загруженные файлы для показа.http://pastebin.com/XWXP0jRAКаким образом можно прикрутить сюда удаление и редактирование имени выбранного изображения? Пробовал через File.Delete(), чёт ничего не работало.Написано на asp.net razor v3
Учился два года в шараге на RAD Studio Delphi 2007. Теперь не могу без визуального проектирования. Что есть на C# подходящего и не громоздкого?
>>781197WinForms конечно же. Но лучше отправляйся обратно в 2007.
>>781197WinForms делал тот же человек, что и Delphi, на 95% они идентичны. Потом переходить на WPF.
>>781197Ничего сравнимого по удобству с Delphi 7 хотя бы так и не появилось.
>>781203С .NET проблемы на делфи. Нужно освоить. Визуальное программирование совсем убого? Мне нужно научиться именно работе с компонентами, если писать на обычном Visual Basic это всё с нуля надо? Или тоже есть уже готовые компоненты?
>>781204Делал-то тот же, только "на отъебись".
>>781206>С .NET проблемы на делфиНет там проблем с .NET уже двано.
>>781206То же самое, что и на Delphi + резиновая сетка для автоматического выравнивания/изменения размеров.
>>781208В шараге стоит Delphi 2007, там проблемы с ним, новый я туда не припру, они весят как скотины и если я без лицензии что нибудь поставлю меня ёбнут. Попробую WinForms. Что вообще можете сказать, про программирование интерфейсов программ на C#? Или это не особо популярно? Я с трудом могу мозги перестроить после этого ебучего Delphi. Пробовал на Python это делать, с QT горем на полам пытался, ёбнулся, когда события присваивал этому всему.
>>781206Компоненты некоторые те же самые. FastReports для VCL - FastReports для .NETНо в Visual Studio все это криво и косо
>>781210>там проблемы с нимВ чем проблемы?> Что вообще можете сказать, про программирование интерфейсов программ на C#? Или это не особо популярно? Популярно. Пишут и страдают, страдают и пишут.Те кто Delphi не видел, страдают меньше - они не понимают насколько все это может быть проще и удобней.> Я с трудом могу мозги перестроить после этого ебучего DelphiЗаебись. Ты попробовал клубок qt-говна, убедился в том что это переусложненное кривое говно, а виновата тебе в этом именно Delphi. Заебись.
>>781211Мне нужно написать программу родительского контроля. Нужно реализовать базовые функции, типа считывать аккаунты в системе, создавать процесс, который будет следить за активностью пользователя по таймеру. Должно быть общее количество часов и почасовой режим. Ведение журналов действий пока особо не надо. Вся эта хуйня должна пойти на диплом. Сказали посмотреть в сторону .NET, я пока до сих пор не понимаю что именно мне сейчас смотреть, решил для начала поставить это всё. Можете что нибудь посоветовать? Хуй с ним с интерфейсом, что вообще на эту тему почитать можно?
>>781216В шараге он ебошится при попытке запуска любого приложения на Delphi 2007, лицензия стоит кооперативная, сказали. НУ ВОТ ТАК.Delphi ни в чём не виновата. Это замечательный язык как по мне, проблема в том, что программа выходит хуй знает какого размера (и я программирую как убогое говно скорее всего) и сейчас все другие языки программирования выглядят как-то ИНАЧЕ. Сложно воспринимать всё, после того как с делфи работал.
>>781216> В чем проблемы?Access Violation при запуске, что же еще. Управление памятью всегда было больной темой в Delphi - и GC нет, и вручную как на C++ распределять нельзя.
>>781217не стоит вскрывать эту тему
>>781232У меня такие же мысли. Но писать надо, второй вариант это йобнутая хуйня с базами данных (от которых уже тошнит) и программой которую я должен сам нафантазировать на произвольную ТОРГОВУЮ ТЕМУ. Ну нахуй.
>>781155Имеется_ввиду_не_писать_вот_так_еб_вашу_мать_что_тут_сложного_?
Шарпач, у меня встал вопрос. Есть одно приложение-клиент для БД на WPF, которое связывается с бизнес-сервером на другом ПК. В этом приложении много различных окон, вкладок, страниц и прочего. Логику клиента запихал в отдельный класс. Предполагаю, что для связи с сервером буду создавать объект клиента, соединятся, принимать инфу и передавать инфу. И вот тут то вопрос: как сделать так, чтобы объект клиента был только один на всё приложение, и чтобы он был доступен из всех окон, чтобы не приходилось пересоздавать его и прочее. Или придётся для каждого окна делать отдельный экземпляр клиента?
>>781530Dependency injection. В composition root в твоем контейнере регистрируешь тип в скоупе синглтона.
>>781575>>781530ну тут вопрос, нужен ли там IoC? почему бы не обойтись просто синглтоном и все. на крайняк периодически убивать экземпляр после продолжительного необращения к нему
>>781575>>781586Пиздец. Я ни одного слова не понял я в wpf со вчера . По подробней нельзя объяснить или я пошёл нахуй в гугл?
>>781586Зачем поддерживать синглтон самому, когда это за тебя будет делать контейнер?>>781530Твои классы зависят в основном от других классов. Твои модели представления, например, скорее всего зависят от интерфейса доступа к данным. Чтобы не выстрелить себе в ногу, как правило такие зависимости передаются классу через конструтор кодом, который вызывает этот класс. Это dependency injection.У вызывающего кода тоже свои зависимости, и так далее до самого начала. Composition root - это то место, где ты создаешь все свои зависимости и, в идеале, на выходе получаешь один инстанс какого-то одного класса, с которого начинается вся работа. Чтобы вручную все эти зависимости не пихать есть специальные тулзы - IoC контейнеры. Судя по всему ты не шаришь, поэтому советую не идти в гугл, а сразу скачать Dependency Injection in .NET и следовать всему, что там написано. В гугле, как правило, примеры по dependency injection полны антипаттернов (в частности сервис локаторы). Не читай все это говно, прочитай лучше книгу и пойми, что там написано. Потом себе спасибо скажешь. И еще почитай про трехуровневую архитектуру, потому что это>Логику клиента запихал в отдельный класс.не хорошо. Каждому окну\странице\вкладке - свой класс с логикой (в разумных пределах, конечно).
>>781604> Каждому окну\странице\вкладке - свой класс с логикойБред, бизнес-логика вообще не доложна быть привязана к экранам.
>>781615Кто сказал, что что-то должно быть намертво привязано?
>>781604Оох. Яснопонятно, спасибо.И еще вопрос по WPF. Никто не сталкивался с таким, что когда комбобоксу присваиваешь стиль, то не видно выбранный объект и не видно вводимый текст (если IsEditable==true). Если не использовать стиль, то всё работает как часы. Понятно, что проблема со стилем, но что именно с ним может быть не так? Есть шаблон контрола для toggle button'a, есть шаблон контрола для PopUp и для TextBox, все они используются в шаблоне ComboBox'a. И что самое для меня удивительное, не так давно мне удалось завести это говно, т.е. элементы из раскрываемого списка выбирались и отображались на комбобоксе, но потом, после некоторых действий, никак не связанных со стилем CB, элементы комбобокса снова не отображаются. Комбобоксы привязываются к public observable collection'ам в view model через ItemsSource="{Binding Path=ObsColName,...}" ссылка на объект view model объявлена в неймспейсе, сам объект создаётся к конструкторе окна и я тут же присваиваю DataContext'у окна объект ViewModel. Также, у комбобоксов SelectedValue привязано к свойствам-string'ам в том же объекте view model. view model реализует INotifyPropertyChanged. Ну и свойства при изменении вызывают метод PropertyChanged.
>>781654>ссылка на объект view model объявлена в неймспейсеВру, ссылка объявлена в классе. Самофикс.
>>781654ContentPresenter смотри. И/или биндинги в шаблоне.
>>781671А всё, отбой тревоги. Я ебаклак просто, закомментировал нужный шаблон текстбокса и оставил с таким же наванием пустой.
Я хуй и не пойму какого хуя. Задачка простая: создать класс который проверяет валидно ли судоку, или его нельзя юзать.Начал хуячить, создал массив, прохожусь по массиву(чтобы понять сколько на сколько судоку, часть задания) и тут какого то хуя всплывает пикрелейтед из второго GetUpperBound. Я ему мамой клянусь массив двумерный а он не верит. Далее код.using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace SkillTest{ class Program { static void Main(string[] args) { int n; int[][] goodSudoku1 = { new int[] {7,8,4, 1,5,9, 3,2,6}, new int[] {5,3,9, 6,7,2, 8,4,1}, new int[] {6,1,2, 4,3,8, 7,5,9}, new int[] {9,2,8, 7,1,5, 4,6,3}, new int[] {3,5,7, 8,4,6, 1,9,2}, new int[] {4,6,1, 9,2,3, 5,8,7}, new int[] {8,7,6, 3,9,4, 2,1,5}, new int[] {2,4,3, 5,6,1, 9,7,8}, new int[] {1,9,5, 2,8,7, 6,3,4} }; Console.WriteLine("Length of Array: {0,3}", goodSudoku1.Length); Console.WriteLine("Number of Dimensions: {0,3}", goodSudoku1.Rank); Console.WriteLine(goodSudoku1.GetUpperBound(0) + 1); Console.WriteLine(goodSudoku1.GetUpperBound(1) + 1); Console.ReadLine(); } }}
>>781727> Я ему мамой клянусь массив двумерныйИ ты только что проебал, у тебя массив массивов.
>>781810И как мне посчитать количество элементов массива в массиве?
>>781814Ну так используй двумерный массив то, либо бери длины внутренних массивов.
>>781815Двумерный массив низя. Эта херня часть задания. Но спасибо. Я как-то провтыкал что это массив масивов.
>>781588почитай про SOLID
>>781859В каком контексте искать? Гугл про solid snake'a выдаёт результаты.
>>782001S.O.L.I.D.https://en.wikipedia.org/wiki/SOLID_(object-oriented_design)
>>766002 (OP)обоссал закуток спермаиндусов
>>782139А ты сам чей будешь, петух?
>>782149джявапримат-то, не иначе
Аноны, спасайте. Есть WCF Service, который принимает класс сериализованный в json. Обязательно описывать этот класс в сервисе?Сейчас контракт службы выглядит таким образомhttp://pastebin.com/7eN340vP
>>782724достаточно аннотировать имеющийся класс как [DataContract] а все свойства как [DataMember]
Хвощ, помогай. Хочу, чтобы по нажатии делался скрин экрана и сохранялся. Я в программировании не шарю вообще, посему моё поделие походит на монстра Франкенштейна, склеенного из решений предложенных интернетом. Вроде всё работает, картинка сохраняется, однако сохраняет картинку в разрешении 1536х864, хотя дисплей 1920х1080. Как эту еботу исправить?Вот код.http://pastebin.com/ENnDeT70
>>782168В свете недавнего релиза .Net Core ему неприятно.
>>782982На Хабре об этом не писали?
бандиты, при работе с именоваными трудами (named pipes) нужно ли закрывать NamedPipeServerStream методом .Close() после каждой передачи? Или можно держать их открытыми без потери в производительности и избыточных затрат памяти, только лишь надо вызывать метод .flush() после каждой передачи? Или нужно всё таки держать каналы закрытыми, и открывать непосредственно на передачу?
>>778094Лол, был в похожей ситуации. Парниша пиздатый SPA делал, пришел новый начальник, всех собрал и сказал - это что такое? на asp.net mvc razor все должно быть, переучиваться будут все. Почти весь отдел написал заяву в тот же день я тоже
>>777989>>783330
>>782898Бумп вопросу
>>783544Ты там в виртуалке штоле запускаешь? Все нормально с кодом.
>>783567Тогда, видимо, проблема не в коде, а дисплее или около того. KMP когда на весь экран фильм разворачиваю тож пишет разрешение 1536х864. А виндовоз грит что фуллхд. Странно всё это.
dotnet -v runTelemetry is: EnabledProject test (.NETCoreApp,Version=v1.0) was previously compiled. Skipping compilation.> Telemetry is: Enabled> Telemetry is: Enabled> Telemetry is: EnabledСпасибо, Майкрософт!
>>783330а у нас все наоборот. Хуяк и одномоментно все учим нокаут и иже с ним
Собственно пытался установить coreCLR на распери пи 2, но соснул большого ARM-овского хуйца. Раньше когда был dnvm можно было поставить mono-вскую dnx для arm, а сейчас хуйс. Никто не в курсе они это чинить будут?
>>784538Под windows iot пускаешь?
>>784615да это ущербо-ось пока что. Под Rasspbian(Debian) запускаю.
>>784538Начиная с RC2 моно больше не поддерживается (и не будет).https://github.com/dotnet/cli/issues/2576#issuecomment-211625062
>>784665Ну пускай тогда под ARM x86 мне дотнет запилют, суки. Не покупать же ради этого RPi 3.
>>784671> ARM x86WHAT?
>>784682Да, хуйню пизданул. Кароч надо под арм линукс
>>766002 (OP)Объясните мне что происходит? Работаю в одной софтварной конторе asp.net кодером и примерно с 15 года началась тенденция, что даже самые стабильные заказчики все чаще говорят "не хотим windows server - хотим gnu/linux", хотя раньше их все устраивало. И позиция у них все жестче и жесче "винда на сервере, вы что смеетесь". У нас уже создали целый отдел под node.js/angular, что дальше?
>>785042.net core?
>>785085Двачую, сам давно перепрыгнул и теперь плачу копейки за мощьный VPS на Ubuntu (и никакой отдельной платы за лицензию на windows).Плюс docker контейнеры нормальные и человеческий SSH.
>>785095И кому ты это продаёшь?
"I've got a talk on .NET Core in 2 weeks. I think I'll just get up on stage and cry for 50 minutes"Поясните, почему все так кипишат из-за каких-то проблем с релиз-кандидатами? Какой даун вообще пишет продакшн код на нерелизнутой платформе?
>>785042Я сам был виндоблядком до некоторых пор. Недавно увлёкся изучением линукса. Теперь я понимаю что сервера на линукс это лучший выбор. Ты представь что на твоём серваке можно поставть ровно столько софта/либ/и рантаймов сколько тебе нужно для работы. Там не будет ВООБЩЕ ничего лишенего. Windows server же это огромная свалка борохла, а при этом нужен он тебе только для того чтобы сайтец хостить в IIS (сферический пример, но тем не менее такое может быть). Огромное количество ресурсов машины тратится на хуй пойми что. Ставятся обновления компонентов которые ты вообще не используешь(да и ещё эти обновления могут поломать к хуям то что ты, как раз таки, используешь). Подняты службы которые тебе не в хуй не впёрлись на этой машине(общие папки, обозреватель сети, служба печати и проч.)По сути правильно собраный линукс для тебя это ядро ос + твоя рабочая нагрузка + либы которые нужны для твоего софта. Я уже не говорю о скорости поднятия машины. Если у тебя распредёлённая система с динамически поднимаемыми вм это вообще шик. В Azure развёртывание дополнительного инсанса в Azure services занимает минут 10, это пиздец ящитаю.
>>785112Мы начали писать, но проект не находится в активных продажах сейчас. Был опыт продажи проектов FMCG компаниям. Они ахуевали от стоимость SQL того-же самого + win server. Так что новый продукт решили пилить на .netcore + postgresql.
>>785115>>785117Кстати досихпор не знаю, какое серверное ПО стоит за азурой? Фермы из виндовс серверов?Я не то чтобы в тренде дохуя, Но азура+katana+azure sql выглядит оче годно для меня.
>>785133>katanaХуйню сказал, owin естественно. Никакой ебли с IIS. Для селфхостед уже катана, ога, тоже мегагодная штука.
>>785107Никому :) , это бэкенд для моих же мобильных приложений (которые тоже open-source).Именно по этому мне нужны экономные решения и никто не ограничивает меня legacy-технологиями.
>>785133Там есть большое количество служб. Можно просто виртуалку развернуть и будет тебе обычные дэдик. Есть Azure Services, которая умеет в автоматическое горизонтальное масштабирование, которое легко настраивается.Так же есть Web app это типа shared хостинга у обычных провайдеров. Ты просто по FTP закидываешь сайт и оно работает. Есть бесплатный план обслуживания(как раз таки shared, без гарантий по производительности и невозможно привязать свой домен. По умолчанию даётся твой_сайт.azurewebsites.com).SQL Azure это по сути MS SQL без администрирования самого сервера. Создаёшь типа виртуальный сервер, создаёшь в нём сколько тебе надо бд, берешь коннекшн-стринги и работаешь. Всё делается через гую без мозгаёбства минут за 15.Кстати для SQL тоже есть какие-то бесплатные лимиты.
>>785199Собственно в используя azure webappshttps://azure.microsoft.com/ru-ru/services/app-service/web/Тебе твой оуин вообще не нужен.
>>785115На чем теперь кодишь (платформы, языки)?
>>785117А зачем неткор, почему не джанго или нода?
>>785228Ну на работе у меня классический asp mvc стэк. Coreclr и линукс это я по фану дома ковыряю. Понравилась мне вся эта история с тех пор как диплом написал на распбери пи debian +coreclr + sqlite
>>785231Потому что команда состоявшихся высококвалифицированных дотнетчиков. Тратить деньги на переобучение никто не хочет, да и смысла особо нет. Дешевле подправлять пока стейбл не выкатят.
Итак, решёточники, у меня проблема.Есть один курсач, на шарпе, ибо мы не ищем лёгких путей и учим основы языка за 2 дня: http://pastebin.com/uHtfhTDYИтак, имеется явная проблема со считыванием. Мне кажется, или код, вместо того, чтобы взять двойку из таблицы, видит там набор умлаутов из "Mein Kampf"? Иначе я не могу объяснить вот это:[CODE]Необработанное исключение типа "System.FormatException" в mscorlib.dllДополнительные сведения: Входная строка имела неверный формат.[/CODE]
>>785117>FMCG компаниям. Они ахуевали от стоимость SQL того-же самого + win server.FMCG-компаниями ты продуктовый магазин дяди Ашота штоле называешь?Дешевое пека-железо, дешевые шарпо-студенты, дешевый вин-сервер. Единственное что дорогое может быть это MS SQL Server, но только со всеми энтерпрайзными свистелками - да, тогда он уже почти как серьезные СУБД начинает стоить. Но вашему продукту они зачем, свистелки эти все?
>>785567> Мне кажетсяВ этом и проблема, возьми да посмотри, что там на самом деле
>>785244>команда состоявшихся>нетькорэА что вы там пишите? Там же пока сырое всеВсе шарящие сейчас на node/angular ушли жи
>>785750такое впечатление, что фундамент платформы кардинально изменится/изменяются с выходом Core
Добрый день.У меня есть дерево классов, в нем некоторые дети перегружают методы некоторых родителей, но аргументы остаются те же.И есть помимо него еще класс, в котором есть метод, который в качестве аргумента должен иметь возможность экземпляр любого класса из дерева, и в дальнейшем вызывать его метод (который там то перегружается, то нет).Попробовал сделать просто через указание родительского класса как тип аргумента, но тогда вызывается метод родителя, даже если у наследника есть перегрузка.Пытался понять как сделать через дженерики - и не понял.Помогите пожалуйста, с меня два спасибо.
>>785777> Попробовал сделать просто через указание родительского класса как тип аргумента, но тогда вызывается метод родителя, даже если у наследника есть перегрузкатакое происходит, если ты используешь new для переопределения метода родителя, либо родительский метод не виртуальный и, по сути, у наследников происходит перекрытие родительских методовкроче, надо юзать виртуальные методы
>>785789Спасибо тебе, большое спасибо. Всё встало на места.Правда, теперь я не понимаю - отчего вообще возникла необходимость явно указывать перезапись, интуитивно это кажется наиболее верным поведением (мне).
>>785799тогда, имея два и больше варианта поведения, как определять, какой тебе нужен в данный момент?
Шарписты, есть массив некого основного класса Item, от Item наследуются Item1, Item2,...,ItemN. В Item есть несколько параметров, а ItemN добавляют некоторые свои параметры. Как мне заполнить этот массив из файла? Сериализация через XML работает только для одного класса, а не для класса с потомками
>>785966Просто погуглил: http://stackoverflow.com/questions/4801215/how-do-i-use-an-xmlserializer-to-deserialize-an-object-that-might-be-of-a-base-ohttp://stackoverflow.com/questions/20084/xml-serialization-and-inherited-typesмимо
>>785970Благодарю
>>768864Каждый раз проигрываю с тех, кто умудряется получить ВО, но при этом не получить опыт работы. Вы как так делаете?
>>785986Учиться же надо, ты што, некогда работать!
>>782001https://www.youtube.com/watch?v=IkyAOMR7t0U
тред не читал, куда пойти работать в дс2?опыта чуть больше года, знаю mvc, ef, tsql, немного фронтенда(angular, knockout). хочу чтобы побольше бэкенда было.
>>786396макдак. первое время сплошной бэкенд, потом с повышением все больше работы во фронте
Что жиьать к вас для веб-разработки?
Халп! Есть 2 библиотеки - одна просто с классами, другая - библиотека UserControl'ов для WPF. Так уж вышло, что мне нужно связать эти 2 библиотеки друг с другом. если в краце - в dll с UserControl сделано окно для "тостерных" оповещений, а в dll с классами планируется сделать вызовы этих окон в одном WPF-проекте (не библиотеке) Но что то пошло не так и... во первых, при добавлении референса в другие проекты на библиотеку с классами, видна не последняя версия библиотеки, а старая, примерно недельной давности, там нету большей части того, что я дописал за последнюю неделю. Rebuild проекта не дал каких либо результатов. И ещё, в библиотеке с классами, несмотря на добавленный референс на библиотеку UserControl'ов, не распознаётся namespace из той самой UC-библиотеки, где и лежит класс с окном для оповещения. ШТОДЕЛАТЬ?
Вкатился в разработку всяких дополнений и макросов к CAD системам, сам то я инженер-конструктор. Кодю на шарпе.Что посоветуете интересного?
>>786549добавлял референс каким образом? не через Browse, надеюсь?
>>786556Кхе. Именно через него. А как по другому? Просто .dll пихать в папку?
>>786557проект dll-а с классами в SolutionExplorer -> References (ПКМ) -> Add reference -> Projects -> ищешь свой проект с UserControl -> отмечаешь галку -> OK
>>786558>ищешь свой проект с UserControlвот это же через browse делается? а то у меня список solution'ов пустой. И ещё, добавлять нужно файл .dll, .sln или .csproj?
>>786562у тебя физически проекты двух библиотек находятся по разным солюшнам?
>>786564Да.
>>786565ну тут нормальным вариантом будет добавить post build event для проекта с контролом - копировать dll и pdb соответствующей библиотеки и всех зависимых частей куда-то в папку скомпилированных библиотек, а для другого проекта - добавить референс на длл из той папки. после ребилда у тебя будет гарантия, что ты используешь всегда актуальную версиюподозреваю, частично механизм у тебя именно так и работает, но тут, скорее всего, проблема в том, что источник библиотеки не обновляется по какой-то причине
Решил короче одну свою проблему из >>786549Оказалось, в одном из namespace'ов библиотеки с классами были ошибки, которые при сборке почему то не показывались. Сейчас осталась вторая проблема - добавляю в библиотеку с классами reference на библиотеку WPF-UserControl'ов с окном, и при использовании namespace'a с окном, VS2013 выдаёт ошибку, что типа "тип или пространство имён %имя пространства имён% не может быть найдено. может вы забыли референс?" При этом, namespace из той же библиотеки нормально видится той же студией в другом WPF-проекте - не библиотеке. ШТОДЕЛАТЬ
>>786576Всё, решил проблему. У библиотеки WPF UserControl целевая версия .net framework была выше, чем у библиотеки с классами
>>785134Катана это имплементация OWIN спеки, там по сути обычный http listener. Не вижу в ней смысла сейчас, когда core релизнулся.Kestrel из .net core в этом плане на порядок производительнее и дает пососать и ноде и goвну.
>>786665Зачем Кестлеру прокси сервер? Для SPA можно обойтись одним Кестлером?
>>786695Можно конечно, но в продакшн лучше все равно проксировать через Nginx. Да и по раздаче статики он лучший вариант.
Анон, в чем преимущество NUnit перед дефолтным MS Unit?
>>786953по сути, никакогоhttp://stackoverflow.com/a/1554058только для первого и последнего пункта по ссылке мне нечего сказать, т.к. не сталкивался. остальное - какая-то хуита
Продублирую вопрос из Java-тредаЧто почитать про энтерпрайзное архитектуренье в .NET-экосистеме?Что вместо JPA, что вместо JMS, что вместо JTA?Распределенные транзакции, очереди, вотэтовсё.ASP.NET и другие вебодела неинтересны, для веб-недобэкенда есть Node с хипстерами за миску пиццы.
>>785567>Есть один курсачНахуй иди.
>>787025Ну последняя хуйня довольно полезная, когда нужно конструктор потестить на проверку аргументов, или аргументы правильно расчитываются. >>786953У NUnit с третьей версии есть большой недостаток - не работает их GUI Runner и приходится запускать тесты плагином для студии, который ну очень сильно тормозит
>>787062EntityFramework, NHibernate.
>>787251> EntityFramework NHibernateЭто ORM с примочками, я не о том спрашивал.Картинка удручает
>>787267WCF, WWF - начни с этого
>>785986Из тех, кто работал в нашей группе, никто не закончил универ.
>>787277WCF - это обертка над MSMQ и MSDTC со свистелками?
>>787062>недобэкДля этой вашей .Net Core есть какая нибудь ModbusLib или ничего еще .Нет?для ноды есть например
Я как нибудь могу использовать js код на определённой странице из бэкэнда? Те есть сайт, допустим вк. Я могу запустить на нём определённый js, и залогиниться на нём?
>>787366Конечно можешь, но срать то можно и не снимая свитера.
>>787368Иронию уловил, а какой нибудь ссылочка можешь подкинуть?
>>787369Ты задачу то бы описал сначала? На примере вк - документашка вк может тебе и логиниться не надо будетЕсли все же хочется поиграть в жс - можешь посмотреть в сторону phantomjs, или anglesharp, который тоже умеет в выполнение скриптов.
>>785986Нужно было помогать в бизнесе родителям, постоянно работал у них, по специальности опыта не получил
>Кокок подчёркивания не нужны.В то же время в доке аспнета все примеры их используют.
>>787825>>781453
>>787825разве?
>>787825Leading underscore и snake_case не одно и то же.
Шарпач, я знаю, тут седят боги программирования, я бы мог спросить в других ветках, суть одна - байтоебствою в ветке шарпа народ кажется более УМНЕЕ. Что хотят здесь от меня? я не могу разобраться. 1) Почему пишут "Для автоматического определения адреса одиночного прибора допустимо использовать команду запроса версии с широковещательным адресом 54535251"Но в мониторе видно что порядок вообще обратный, а именно надо посылать в таком порядке:byte[] broadcastInvoke = { 0x51, 0x52, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x4A };Почему в обратном порядке отправлено первые 4 байта?Эту строку я скопипастил из монитора и сделал массив, тестировал соединение2)L-3, L-2,L-1 это длина в байтах? Вот есть команда 14 (запрос заголовка архива с устройства). Адрес устройства я получил, команда 14, параметры команды 01. Заполняю: 35 51 00 00 15 01 XX XX XX XX XX XX XX XX XX XX - что в этих иксах писать? Я могу посмотреть монитор опять, но я не пойму суть.2) Поясни за контрольные суммы по модулю 2 и 256 - как их генерить? Я понимаю что это XOR, но что складывать и как выводить в сообщение? Какой порядок? опять обратный или нет? Шарпач, помоги!
>>788255Там же написано, что младший байт передается первым, про endianness прочитай уже. Попробуй нулями заполнить, а лучше посмотри что на самом деле отправляется. По модулю 2 - бит четности, 256 - байтики складываешь не обращая внимание на переполнение
>>788255Что сделать то надо?
>>788261Что значит байтики складываешь? Я только ООП выучил более-менее, а булеву алгебру только в школе проходили. Как бит четности найти, что тут нужно складывать, можешь привести пример, раз уж тащишь. Тебе это явно не составит труда, няша.>>788263Опросить теплосчетчик и расшифровать входящие данные.
>>788267Значит запись в мониторе идет в обратную сторону; чтобы понять как работать с 14 командой нам нужно ее видеть, вот пример с 0:FF FF FF FF /АДРЕС/ 00 /КОМАНДА/ 00 00 00 00 00 00 00 00 00 /ДАННЫЕ/ FF FF /CRC/Так как параметры явно не указаны, значит можно заполнять нулями, если в другом месте описания протокола не написано обратное.
>>788255>Но в мониторе видно что порядок вообще обратный>Младший байт адреса передается первым>передается первым>первымСовсем пиздоглазый?
>>788325Я разобрался, спасибо. CRC победить не могу. XOR же это оператор ^Складываю в калькуляторе - ок! получается 0x35^0x51^0x02 = 0x66Складываю в коде - пися, получается 0х18ЧОМУ!?!?!
Господа, где можно найти FAQ по установке .NET Core на линукс не из списка дистров, указанных в dotnet-репо? Допустим, пропатчил я скрипты - оно собирает практически всё, но при попытке собрать mscorlib.dll начинает качать какую-то невнятную хуйню, пытаясь угадать название моего дистра. Зачем? Я же вроде как из сорцов собираю.
>>788874> Зачем? Я же вроде как из сорцов собираю.Зачем ты это делаешь, вообще делаешь?
>>789062Потому что для нужного мне дистра нет готового решения, очевидно же. Частично ответы нашёл тут:https://github.com/dotnet/coreclr/blob/master/Documentation/building/freebsd-instructions.mdНо вообще MS здесь подобосрались маленько, в линуксе ведь как принято - указываются зависимости, а дальше оно должно собираться почти без танцев с бубном на любом дистре. В данном случае всё иначе.Ладно, похуй, придётся дебиан накатывать.
>>78929599% луноходов сидит на убунте.
Здраститя. Можно ли из одного воида вызвать другой воид?private void Che_nebud(object sender, EventArgs e){...}private void Question_TextChanged(object sender, KeyEventArgs e){return Che_nebud();}Или объединить как-нибудь EventArgs и KeyEventArgs? Вообще я хочу чтобы функция срабатывала при нажатии на кнопку "Ввод" и enter на клаве.
>>789299Только сервера на сентос.
>>789729Главное что бы там docker работал, с CoreCLR остальное пох.
>>789721> Можно ли из одного воида вызвать другой воид?Конечно, только надо сначала результат Che_nebud() присвоить во временную переменную и ее уже потом возраращать.
>>789734Как это сделать? Допустим есть куча функций после обработки которых в конце вызывается эта самая Che_nebud()
>>789731>dockerИногда лучше прямо на хосте это всё запускать, безо всяких докеров.
>>789816А иногда лучше иметь контейнер, который - может развернуть за минуты на любой машине- можно запускать несколько экземпляров не заботясь о конфликтах- можно перемещать с машины на машину вместе с настроенным окружением- можно иметь базовый настроенный контейнер и наследоваться от него- можно централизованно обновлять инкриментно все контейнеры через hub
>>789740Если ты из void хочешь вызвать void, то return не надо. Иначе необходимо вызывать все, что ты там хочешь внутри, приводить к возвращаемому типу данного метода и вертать
Как лучше хранить иконки для отображения информации( флаг страны, погота, и т.д.) на асп нет? Жду мудрых советов
>>790229В папке images
Посоны, есть мануалы как делать базу данных, таблицы и записывать туда данные на VS2012 + MS SQL, раньше делал VS2010+MS SQL CE, но на 2012 нету больше CE, где почитать про это?
>>790280Entity Framework, LINQ-to-SQL
>>789816На практике удобнее держать core os на хосте + контейнеры.
Господа шарпы, подскажите плез различия между Action callback;1) callback();2) callback.Invoke();
>>790589Нету их это одно и тоже. Только во втором случае ты можешь еще написать callback?.Invoke(); для избежание NPEP.S.Ну почему блин до сих пор не сделали callback?(); ?
>>790605Чтобы жопа от сахара не слиплась.
>>789945>>790313Может через месяц-три будет удобнее, да. Там как раз тонну патчей напишут. Сейчас можно регулярно ловить сегфолты даже в типа "официальных" контейнерах.
>>790605Потому что ещё не вышел C# 7/
Ануний, подскажи зеленому как правильно реализовать поведение кораблей в космосе (2d-рейнджеро-подобная игрушка на unity). Есть к примеру торговец и пират, нужно чтоб они вели себя подобающе. Что мне делать? Добавлять каждому объекту функцию Behavior(), само собой у разных типов своя реализация, и вызывать эту функцию каждый апдейт движка у всех существующих кораблей? Просто другого в голову ничего не пришло, не обижайте.
>>791144Если что сцена пустая, вся логика пока абстрактная, это же так называется?
Сисы, на Core уже стоит перекатываться? Что-то у них Иссуесов много на Гитхабе.
>>791190Конечно, берешь свой проект 2010 года под Windows с COM, WCF, C# 3.5, ASP.NET 2, EF 3 и переносишь на линкус.
>>791190почему нет? в продакшн, конечно, отправлять на свой страх, но знаю две конторки, клепающие на коре коммерческий шлак
>>791190В принципе уже можно. Проблемы есть, но они как правило связаны с какой-нибудь экзотикой - достаточно те самые ишьюсы почитать. Пока что самый главный минус - это местами довольно сильное отличие master на гитхабе от того, что есть в готовых бинарниках, поэтому может потребоваться самостоятельная сборка Core + CoreFX + CLI, чтобы какой-нибудь срочный баг пофиксить. На debian stable с этим проблем нет, например.Ну и делать что-то mono уже как-то не камильфо, там как не работали многие вещи, так до сих пор и не работают. Плюс вспомогательные компоненты mono типа xsp не обновлялись уже чёрти сколько, поэтому их тоже приходится отдельно собирать с патчами.Я вот недавно решал, на чём буду писать новый прожект под линукс, хотел уже C# дропнуть и делать всё на nodejs, но релиз Core несколько исправил ситуацию.
Посоны, как быть, если мне надо в базе данных(localdb v11.0) в таблице хранить не более 86400 записей, при достижении 86400, нужно старые перезаписывать? Если заранее делать пустую базу с 86400 строк, то через Update запись сразу в 4 таблицы делается долго( по 150мс в каждую таблицу).Если через Insert, то это удалять 1 строчку каждый раз при достижении максимального, но как она удаляется, первый столбец ключевой типа int нумерация сбивается, в итоге через пару дней работы там уже будут нихуевы значения, первая строчка уже под номером 170 тысяч, вместо 1.
>>791405>Update запись сразу в 4 таблицы делается долго( по 150мс в каждую таблицу)Чё-то дохуя, хотя смотря что ты там хранишь, конечно. Юзай Dapper или SqlCommand.
>>791431Ну у меня по сути вся проблема в том, что я когда удаляю первую строку, у меня удаляется вся строка и соответственно там ключевой столбец "N" была строка с номером один, удалил ее, теперь первая сторка с номером 2 и т.д. Мне то в принципе поебать что там в этом ключевом столбце, он мне вообще нахуй не нужен, но я боюсь, что там когда-нибудь выйдет за диапазон INT и будет эксепшн выдавать или что-то вроде того
>>791436Убери индекс если тебе он не нужен.
>>791461Убрал, теперь наслаждаюсь ошибкой.
Я просто не пойму, если я удаляю строки из таблицы в базе данных SQL, то первичный ключ тоже удаляется и нихуя не обновляется, в итоге он просто идет вразброс, 15,21,23,24,25,27. Нельзя его обновить как-то, чтобы он снова шел с 1?
>>791480http://stackoverflow.com/questions/21824478/reset-identity-seed-after-deleting-records-in-sql-server
>>791473А, у тебя EF.
>>791480Смирись уже, это стандартный подход любой БД или делай как >>791489 говорит, только не на всякой базе это есть.AIK будет расти пока не упрется в максимум, только после этого он начнет подбирать свободные значения.AIK это вообще более быстрая/оптимизированная альтернатива Guid (генерация неповторяющихся айдишников).У тебя какая-то логика работы приложения неправильная, раз зависишь от его конкретных значений.
Аноны, зелёный вопрос по парсингу с CsQuery.Есть страница, которая выдаёт n первых результатов в виде ul-списка, а затем подгружает остальные по мере прокрутки страницы вниз. Проще говоря, принцип отображения схож с лентой новостей вк, только на обрабатываемом ресурсе есть пределы, до которых страница "растёт вниз" (присутствует счётчик страниц, например, Page 1 of 150). Навигация по страницам также присутствует.Когда я создаю CQ DOM объект с содержимым по требуемому запросу, то получаю код как раз тех самых первых n результатов - то есть, всё то, что поместилось на страницу 1. Есть ли какой-то хитрый способ, чтобы без особого геморроя получить код всех страниц по одному запросу в один объект? Или нужно сперва получить количество результирующих страниц, а потом в цикле пробегать их все, каждый раз создавать новый DOM объект и парсить по-отдельности? Вариант сомнительный, т.к. каждая страница и так парсится не особо быстро - в пределах 1.5-2 секунд, а если страниц 5-10 тысяч?
>>791495Ну может логика неправильная я не знаю, подскажите что ли.Вот у меня есть необходимость каждую секунду записывать показания с датчиков, нужно чтобы эта информация хранилась 24 часа(86400 секунд). Старые значения не нужны.Датчиков у меня 30 штук.Получается делаю базу данных, в ней таблицу с полями N(PK),Time,Датчик1, Датчик2, ДатчикN...Каждую секунду делаю db.Table.Add(entry) в итоге у меня каждую секунду добавляется новая строка в таблицу, так пока количество строк не станет 86400, теперь мне больше строк не надо, какой выход? Удалять первую строку и вставлять новую, так у меня всегда будет 86400.Как это лучше сделать?
>>791506поставь сторонний джоб, который каждый час будет удалять все записи, не входящие в топ-86400 по времени
>>791506Партицирование, узнай о нем.
>>791510>джоб?>удалять все записиПервичный ключ при этом будет обновляться или так же как сейчас будет смещаться?>>791511>ПартицированиеСейчас погуглю
>>791514ну какой-нибудь сторонний скрипт, запускающийся по интервалупервичный ключ будет инкрементироваться, как и любой другой первичный ключ
>>791506А где в этой схеме работает AIK ?
>>791522>AIKАвтоинкремент? Ну я все это делаю через Entity framework создал таблицу - первичный ключ int и он сам стал автоинкрементом, нельзя убрать с него автоинкремент([N] INT NOT NULL PRIMARY KEY,) вот и весь его код. А без Primary key - ошибка.
>>791527Туплю, вроде можно без автоинкремента, самому вставлять значения в N.
>>791527Блин да сделай ты из него long, этого тебе хватит на 1000 лет
>>791537long хватит всего на 68 лет, если не брать отрицательные, а вот bigint хватит до конца времен.
Двач, подскажи начинающей студентоте, у нас С# будет идти только в рамках винформочек, но я так понимаю это совсем неактуально, сейчас есть знания ООП, структур данных, доучиваю события и делегаты, куда двигаться дальше? ASP.NET и СУБД? И насколько необходимо хорошо знать HTML/CSS/JS? Такой объем информации тяжело потянуть в оставшиеся 2 года.
>>791368>но релиз Core несколько исправил ситуациюЯ вот хочу запилить веб-сервер для игры и думаю использовать новый asp.net core. Выглядит он круто, гораздо лучше старого asp. И вроде как работает быстрее, но чёрт знает. Не хотелось бы потом ловить баги. Хотя сервер простенький.
>>791620Что-ты сомневаешься: ASP NET Core уже вышел стабильной версии 1.0, EF Core тоже.Сам .NET core конечно еще версии "preview 2", ну так НЕ бери всякие извращенные линкусы.Возьми Ubuntu или Debian для сервера, на них все отлажено и стабильно (а лучше официальный докер).
>>791661Вообще то вышел уже.
>>791566> И насколько необходимо хорошо знать HTML/CSS/JS? .Очень необходимо.
>>791682>Вообще то вышел уже.Кто? У .NET Core последняя версия 1.0.0-preview2-003121У тебя где-то есть стабильная?
>>791506Хранимая процедура. В принципе можно и в коде обработать.
>>791690Мне вроде сказали, что вышла rtm
Ребята, подскажите как парсить json вот такой например http://pinterestapi.co.uk/spb/pins там в элементах массива attrib либо объект либо false. Я использую либу от newtopsoft. делаю так RootObject rootObject = JsonConvert.DeserializeObject<RootObject>(jsonResponse);в rootObject все остальные объект. Поле attrib типа object. при десериализации поле attrib имеет либо тип object(bool), либо object(Newtonsoft.Json.Linq.JObject). А можно сделать так что бы оно сразу приводилось либо к bool либо к моему типу Attrib? Подскажите годных статей как парсить такие json?
>>791754Пиши кастомный конвертер. Вот пример из доков Newtonsoft:http://www.newtonsoft.com/json/help/html/CustomJsonConverter.htmДальше гугли уже самостоятельно, на SO было несколько тредов на эту тему. Только учти, что они несколько староваты, с тех пор интерефейсы малость поменялись.
>>791661>Возьми Ubuntu или Debian для сервера, на них все отлажено и стабильно (а лучше официальный докер). Иногда с MS можно проигрывать бесконечно. Убрали из зависимостей mono, зато теперь mscrolib.dll только по ссылке под конкретный дистр. Обещают вроде пофиксить это дело. Вот тогда заживём, да. Можно будет не привязываться к обоссаным ubuntu/debian алсо проиграл от версии nodejs в debian stable.
>>791566Unity3d.
>>791566На самом деле вполне можно найти работу, где будешь иметь дело с винформами, но это конечно менее перспективное направление.
>>766002 (OP)Пиздец. В релизе третьего апдейта пиарили оптимизацию памяти в студии как главную фичу. После установки студия стала жрать почти в два раза больше. Дебилы бля.
Храню в веб конф сторуку запроса к апи с вскавкой значения (типа "bla@{0}amp;")Беру переменною строки в код и как мне вставить значение в {0}
>>792057Докумекал сам
>>792041можэ решарперский или еще какие-нибудь говноаддоны? бывшие тиммейты тоже после апдейтов ругались на подобную ебень, но источником проблемы была во всех случаях точно не ВС
Что сейчас использовать, если я хочу отрисовывать картинки на винформах через OpenGL?
>>792144Так решарпер до апдейта тоже был, поменялась только студия.
>>792253Ничего.
ASP.net webилиXamarinЧто лучше, господа диванные макаки
>>792341Но как мне тогда отрисовывать картинки?GDI+ слишком медленный.
>>792361Гейшлюхой конечно - лежишь ничего не делаешь, а денюжки капают
>>792378В /б/ пиздуй
>>792361Xamarin, рынок мобильных растёт год от года.
>>792388Растет то он растет, только мимо этого говна.
Йоп. Недавно закончил шарагу и как-то поздно определился с каким языком вкатываться в работу на дядю. Сейчас жестко задрачиваю Шилдта и параллельные темы с разных ресурсов, но как-то не выходит найти каких-то практических задачек среднего уровня по какому-нибудь десктопу. Может кто посоветовать что? Хотя, раз пошла такая пьянка, может быть кто-нибудь вкатится и поможет освоить этот язык и направит с технологиями, которые нужны будут для джуна?
>>792435> по десктопу> точка нет> 2016Ты опоздал лет на 15
>>792409Лолка, лучше одного быдло-кодера на зимарине нанять, чем отдельно под каждую мобильную платформу. Тем более, что разницы в производительности нет. Нативность платформ поддерживается
>>792438А куда вкатываться, если со своим скиллом под мобилки что-то делать не вариант, а веб чет не нравится вообще?
Анончики, а можно ли на WPF сделать интерфейс как у студии? Хочу окошки в основном окне, которые можно аттачить.
>>792441Ебаклак, ты маркетолог мелкоговнософта что ли? Шел бы отседа со своими лозунгами.
>>792446В теории можно конечно, только будет тормозить... как сама студия, лол.
>>792442WPFчистый бэкенд
>>792457Есть какие ру ресурсы с задачками с низкой\средней сложностью?
>>792452А есть где почитать как такое сделать?
>>792458я не знаю, соре
>>792451 Зайди в любую контору и спроси: 1 говнокодер на шарпе или вместо - жабаеб и крестовик для мобилок
>>792465Не знаю где конкретную имплементацию найти, просто исходя из того что впф как раз был создан для такого типа интерфейсов. Самому наверное долго писать, может стоит посмотреть всякие прикладные бибилиотеки типа telerik или devexpress.
>>792481Кстати, как в последней студии получить полный доступ к фичам этого ксамарина? Юзаю пиратский ключик если что.
>>792487попробую devexpress. Спасибо.
>>792489На коммьюнити все работает бессплатно
Так как большинство вакансий под .NET это ASP, насколько важно хорошо разбираться в верстке.Вот я пришел на собеседование по ASP.NET вакансии. Когда я сказал что хотелось бы заниматься бэкэндом и я не могу по псд шаблону сверстать страничку, на меня посмотрели как на дауна.
>>792559Говоришь им, мол я хтмл макака вам или кодер и шлешь нахуй
Хочу учится программировать на C#. Где можно взять литературу, понятную для ньюфажки?
>>792446ВНЕЗАПНО студия и написана на впф.
>>792585Во втором посте.
Поможите с укращением винформс.Есть один пикчюрбокс. В него грузятся изображения разного размера. И нужно сделать так, чтоб по ширине он всегда был одинаков 480 пикселей, а по высоте занимал ровно столько, сколько нужно для изображения. Т.е. что бы и альбомные листы показывал и портреты.Поставил ему PictureBoxSizeMode.Zoom Картинка отображается как надо. Но сам бокс не меняется в размере. Если задать ему размер руками, то по бокам всегда будет пустое пространство если изображение не квадратное. А как сделать так, чтоб он сам менял высоту под конкретное изображение?
>>771533Сука, теперь я понимаю боль здесь сидящих.Преобразовывает введенную строку в 16-и битное представление целочисленного числа со знаком. h из контекста задачи - часы. Следовательно задает час, введённый с консоли. Почему Int16 вместо int? Потому что экономия памяти в 16 бит, хотя я бы взял byte, будь это кресты или наконец DateTime'ом кастовал
>>792559>насколько важно хорошо разбираться в версткеНужно знать основы HTML, CSS, JS, Bootstrap. Знать примерно основные фреймворки. Верстать тебе нужно будет только если тебя как фуллстек программиста возьмут, но я бы не стал браться за такое, ибо тебе мозги вынесут просто нахуй. Просто основы подучи и все основные паттерны ASP.NET типа UnitOfWork, Repository, Service. И про SOLID не забудь, а то засмеют.>>792635>Потому что экономия памятиСкорее это только ухудшит работу с памятью. Использовать типы отличные от int нужно с большим умом. Я когда только C# учил тоже везде пихал shot'ы, байты и тому подобное, пока мне не сказали, что я занимаюсь хуйитой.
>>792585Если ты в программировании совсем ньюфаг, то я бы посоветовал эту книгу для начала (правда её сложно найти)http://www.ozon.ru/context/detail/id/1462024/Вот отзыв:Книга отлично подходит для тех, кто только начинает изучать программирование, не имея никакого опыта вообще. Написана очень доходчиво. По каждому аспекту рассматривается большое количество часто возникающих вопросов. Для профессионалов в C# чего-либо интересного в книге нет.
>>792650>Нужно знать основы HTML, CSS, JS, BootstrapА, и HTTP тоже изучи, если ещё не знаешь. Ещёhttps://habrahabr.ru/post/189086/
>>792559>насколько важно хорошо разбираться в верстке.По-хорошему, нужно знать и уметь дебажить JS (соответственно, понимать как работают всякие jQuery, Bootstrap, Angular, React), потому что овердохуя багов будет сыпаться в твой бэкенд именно из фронтенда. А значит, неплохо бы ещё понимать, что это за фигня написана в cshtml-файлах. Лишними эти знания не будут, инфа 100%.>Когда я сказал что хотелось бы заниматься бэкэндом и я не могу по псд шаблону сверстать страничку, на меня посмотрели как на дауна.Ну сейчас рынок такой, хуле. Многие хотят получить именно фуллстэк-кодера, при этом в вакансии может быть написано что угодно. Но это совсем другой уровень мозгоёбства и, соответственно, оплаты труда.Если ты целенаправленно идёшь на бэкенд, то просто забей на этих товарищей и ищи дальше. Есть адекватные конторы, которые не будут задавать дурацких вопросов, а будут спрашивать только за бэкенд.
>>792650>хуитойИ правильно говорят. Нахуй экономить память там, где её много подметает GC. Это не микроконтроллер.
>>792650> UnitOfWork, RepositoryНо ведь это НЕНУЖНО в EF уже это и так все реализовано.
>>792686Во имя Того, чье имя – Врата, призываю тебя!Во имя всех Мелких и Мягких, призываю тебя!Отрекаюсь от программирования, проклинаю оптимизацию кода,В ассемблер не верую!Сей непорочный винчестер и сей компьютер приношу я в жертву тебе,Да умирится твой голод неутолимый!Сколько в памяти занимает значение типа bool?Правильный ответ - 8 байт
>>792706зависит от типов свойств/полей до и после. вроде же если явно не вмешиваться в механизм размещения типа в памяти, то, например, восемь булов тоже упакуются в один квант
>>792714>квант???
>>792719Чувак в квантум брейк переиграл.
>>792719ты не знаешь, что означает это слово, либо просто доебался до того, каким образом я описываю принцип?
Дайте идею для пет прожекта на аспнет.
>>792757двач
>>792757Platinum tier:Адресная книгаLow tier:БлогMiddle tier:Форум с плюшкамиGod tier:Дашборда для любого сложного сервиса с открытым апи (вк, фб), на ангуляре, со сбором какой-нибудь статистики, пиздатым ее отображением (google charts например). Печать отчетов в пдф. Выгрузка файлов в зипах.
>>792714> восемь булов тоже упакуются в один квант Упакуются, а дальше? Допустим ты передаешь булево значение в метод. На уровне процессора это можно сделать через регист общего назначения или через стек, конкретная реализация выбирается компилятором. Для соврременных процессоров основными регистрами вляются 64 битные. Т.е. один бит будет загружен в 64 битный регистр. Если параметров несколько, то скорее всего их передадут через стек. А как проще всего поместить в стек значение?push rax - помещает в стек весь 64 битный регистр. Снова 64 бита, как ни крути.Теоретически, если у тебя около 64 булевых переменных, то их можно хранить в одной переменной размером 64 бита и проверять значение каждой командами сдвига. Но я хз как это в шарпе реализовано и реализовано ли вообще. В общем случае для одной едиственной булевой переменной скорее всего выделят все те же 64 бита, что бы проще работалось с регистрами.
>>793092ну ваще в шарпе можно явно работать с запакованными булями через bitarray/bitvector32, ну и передать его как параметр там, например
Кто кодит под вин фон, подскажите какое событие вызывается при возврате на предыдущую страницу. Например: нажал кнопку на странице и перешёл в настройке, потом при нажатии кнопки назад и возвращении на страницу откуда открывались настройки нужно обновить данные в соответствии с введенными настройками.
>>792341OpenTK
>>792699К сожалению до многих это до сих пор не доходит и они продолжают лепить IRepository<T> повсюду. Может быть лет через 10 додумаются до Command/Query Object.
>>793170Уже сам нашёл, событие loaded
>>766002 (OP)Есть кто перекатился с Java? Интересует:почему перешли,как давно,что ожидали,что получили,не жалеете?
хочу найти работу. вроде не тупой, быстро учусь, но не знаю что конкретно надо в рабочей ситуации.В основном ебусь с парсами данных, машинной авторизацией(не для брута) ну и с апи некоторых сайтов баловался.Какую должность искать?На что расчитывать?
Анон, здравствуй, хочу на джуна асп.нет мвц пойти. Подскажи пожалуйста, что нужно знать. У меня есть базовые навыки по шарпу(шарю паттерны и основные ооп знания), более-менее разбираюсь в веб-дев стеке(хтмл+цсс+джаваскрипт), ну и немного по сетям читал. А и sql скрипты юзал с ADOшкой, тоесть какие-то базовые разбираюсь. Купил на лето книжку по asp.net mvc 5, но чувствую подвох, что этого мало чтоб начать писать бэк-энд, подскажи пожалуйста какие еще технологии нужно еще разобрать, выучить? Заранее благодарен.
>>793304Если на 100 % решил связаться с MS, то учи ультра-модный .Net Core и молись что оно взлетит
>>793304Энтити Фрэймворк, ИИС.>>793319Оно-то как раз позволит быть независимым от MS (ну точнее не более зависимым, чем джависты зависят от Оракла, а питонисты от левой пятки Гвидо). И с чего бы ему не взлететь?
>>793328ИИС? прости тупого, гугл непомог
Объясните на пальцах как работает async await? Каким образом он не блокирует первый (UI) поток или как он ожидает окончание работы второго потока/таска, не блокируя UI-поток и оставаясь (?)потокобезопасным?
>>793351https://ru.wikipedia.org/wiki/Internet_Information_Services
>>793372Вроде тут просто объясняют https://www.youtube.com/watch?v=lh8cT6qI-nA
https://msdn.microsoft.com/ru-ru/library/system.data.missingschemaaction(v=vs.110).aspxMissingSchemaAction.IgnoreКак заставить его игнорить лишние столбцы. Вот например у меня 10 столбцов в базе, я заполняю датасет "SELECT * FROM SomeTable". ПотомAdapter.Fill(Dataset,"bla bla")и до этого я хочу вызвать Dataset.MissingSchemaAction.Ignore - по описанию игнорирует лишние столбцы, иду на MSDN встречаю ссылку выше(Какие столбцы, как игнорировать?).
Я могу как-то получать поток видео из html5 плеера с помощью webRequest'а? Хочу написать для себя десктопный твич плеер.
Посоны, кто умеет в mvvm, поясните за структуру:Есть модель Item, ее имя и id заполняется при старте из sql, value регулярно обновляется с opc-сервера. Фреймворк mvvm light.Собственно я создал ItemsViewModel, коллекцию в нем, а дальше возникли сомнения. Например, нужно ли для всех методов, работающих с sql, выделить отдельный ViewModel? И т. д. Как это примерно должно выглядеть?
>>794282Стандартными средствами это нельзя реализовать вроде бы. Я даже не уверен, что эмуляторы браузеров в состоянии это сделать (NHtmlUnit, AngleSharp и т.д.). Скорее всего, придётся где-то в фоне запускать нормальный браузер и уже из него выковыривать видео через COM-интерфейс, например.
>>794282Алсо у твича API есть, скорее всего через него можно поток видео забирать.
>>794961я знаю, что такую штуку можно сделать с лайвстримером, на гитхубе лежат уже сотни обёрток для него, но чёт хочется самому эту штуку написать.
Куда выпилили дизайнер диаграм для SQL таблиц?
>>792699А ну ка скажи мне. Используешь ты какой нибудь SQL server с ef, а потом случилось так, что тебе пришлось перекатиться на монго. Что ты будешь делать? Переписывать весь код в контроллерах? А может быть легче написать только круд для монги и через ioc контейнер подкинуть его в контроллеры? Так же представь что у тебя массив из айдишников, и штук так 2к, например. Тебе надо из по вытаскивать обработать и записать в базу. Лучше сделать эту операцию параллельной, знаешь что произойдет если ты будешь использовать общий контекст? Крашнется все к ебеням, вот тут тебе юнитОфВорк и поможет.
>>795475>тебе пришлось перекатиться на монгоСложно представить такую ситуацию, люди съезжают куда-нибудь на PostgreSQL с MSSQL, ну да ладно.>Что ты будешь делать? Переписывать весь код в контроллерах?Ну так-то контроллеры должны абстрагироваться от взаимодействия с БД. Сервисами, например, которые внедряются через IOC. А уж как там сервис получает данные, насрать абсолютно. Нужно будет, всё быстренько переписывается под Mongo или ещё какую парашу.>Лучше сделать эту операцию параллельной, знаешь что произойдет если ты будешь использовать общий контекст?Во-первых, в EF есть Async, а во-вторых, нахуя делать общий контекст?
Анон, дай совет по работе с картами.Задача такая: сервер собирает карту на основе OSM, а также данные о рейсах с flightradar24 и отправляет клиенту в лице WPF-приложения, на котором отображается карта с нанесёнными на неё самолётами.Как лучше всего можно реализовать часть, связанную с картой? Гуглил много и долго, в том числе на английском, только сильнее запутался. Буду рад ответу на хотя бы один из этих вопросов:1. Как решается задача в общих чертах?2. Есть ли хорошие примеры самописного кода?3. Какие есть библиотеки/фреймворки с хорошей документацией и примерами? Нашел OsmSharp и MapSurfer.NET, но у первого документации нет вообще, у второго достаточно бедная. Разбираться же на примерах без четкого понимания, что вообще происходит придётся очень долго, а времени мало.
>>795533у майкрософтовского бинга же есть карты, у него отсутствует возможность встроиться в дотнет приложения штоли, не смотрел?
>>795517вероятней всего, товарищ имел ввиду, что при использовании Repository поверх того, что предлагает EF, также в случае резкого перепрыга на другую СУБД, ты подключаешь вместо IRepository<T> -> EFRepository<T> ---> HuiPizdaRepozitory<T> и типа все как и раньше. но проблема в том, что сейчас не 92й год, и каждая СУБД тянет на себя всю свою разницу с другими вендорами, а следом за ними и реализация неких плюшек. что в итоге выливается во все-равно переписывание части БЛ под новые нужды
Анон, дай совет криворучке.Использую OpenGL для отображения картинок (1000x1000 - 3000x3000), но у меня оно медленно работает и память замусоривается.Схема примерно такая:Загрузить необходимые текстуры.Привязать текстуру.Нарисовать прямоугольник (с текстурой).Отвязать текстуру.Удалить текстуру (GL.DeleteTexture), так как она не используется далее. И так несколько раз.Но даже со сбором мусора вручную (GC.Collect) оно всё-равно забивает всю видеопамять вскоре.
хлопци, как в WPF анимировать движение окна, при условии, что команда на движение подаётся через метод, не связанный с базовыми событиями любого контрола этого окна (типа там mousedown/keypress, т.е. обычные триггеры/ивенттриггеры/мультитриггеры не подойдут, разве что сейчас попробую дататриггер)? пробовал VisualStateManager, но либо не понял как его прикрутить собсна к окну в кзамле описал visualstategroup со всеми соответствующими анимациями просто между тегами window, перед гридом. не grid же мне толкать, либо неправильно вызываю метод VisualStateManager.GoToState(this, "aaa",false); из Model.
SAMOKAT https://2ch.hk/pr/res/796165.html
>>769991ты же вкурсе мамин русофоб что для англоговорящих всё выглядит так же да?
Анончики, кто сидит на линупсе, прошу: запустите этот код и скопируйте содержимое сюда. Очень важно знать какие пути добавлены в mono.foreach(var x in Environment.GetEnvironmentVariables()){ Console.WriteLine("{0} = {1}", x.Key, x.Value);}
>>799199Ок, запустил сам на виртуалке.HOME = /home/UsernamePATH = /usr/local/bin:/usr/bin:/binMONO_DISABLE_SHM = 1SHLVL = 0TMPDIR = /tmp/LANG = en_US.UTF-8PWD = /home/Username
>>767429>аяксом нельзя аплоадить файлыПочему? Я php+js макак объясните мне. В .net я не должен что-то выдумывать или пользоваться сторонними разработками, а должен использовать некие стандартные инструменты, которые ограничивают возможности в угоду скорости разработки?Я апложу аяксом на нужный url, там роутинг, контроллер, экшен, проверка прав, загрузка на диск, запись в бд, отдаю ответ что всё збс. В бразуре js смотрит что ответ збс и прикрепляет миниатюру, либо если всё плохо информирует. Также делаю возможность удаления и сортировки.
>>793253А почему ты хочешь перекатится с жабы?
Проебал месяц занятий, накопилось куча заданий, а я почти нихуя не понимаю. Сильно больно не пинайте, пожалуйста.Есть задача: сделать два класса. Первый "книга" с параметрами вроде автор-цена и прочее, второй "библиотека" - содержащий массив "книг".Класс "книга" class Book { public Book(string Autor, string Name, string Publish, string Printing, string Price) { this.Autor = Autor; this.Name = Name; this.Publish = Publish; this.Printing = Printing; this.Price = Price; } string Autor; string Name; string Publish; string Printing; string Price; + методы с сет/гет для редактирования }Класс "библиотека" class Lib { public Book[] arrLib = new Book[10];+ методы }В мейне создаю книгу Book B = new Book ("1","2","3","4","5"); Что и как надо сделать, чтоб можно было работать с массивами arrLib (arrLib[0] = B; например)?
Аноны, не могу сообразить в куки.Первый этап:Есть один сайт, на него я делаю post-запрос с авторизациейРезультат отправляю в строку и для проверки сохраняю в отдельном файле. Файл проверю - все ок, содержимое такое, какое должно быть после удачной авторизации. Второй этап:А вот на втором этапе я и забуксовалТребуется отправить get-запрос на тот же сайт. Ок. Делаю get-запрос, сохраняю результат в файл, смотрю содержимое файла и вижу то, что бывает, когда неавторизованный пользователь кликает на какую-нибудь ссылку, требующею авторизации.Что мне в данном случае делать? Я понимаю, что нужно использовать куки, но я не могу банально допереть как получить куки после того, как я сделал post-запросПодскажите, в какую сторону копать.
Анончик,Раз уж тред про .NET, добавь пожалуйста годных учебников по VB.Спасибо.