Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем 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. Какую ИДЕ выбрать?Для Windows самым очевидным вариантом будет Visual Studio (https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs.aspx). Студия распространяется в двух редакциях: бесплатная коммьюнити-версия и платный энтерпрейс эдишн. В большинстве случае будет достаточно Community-версии: она поддерживает и C#, C++, VB.NET и F#, а так же имеет возможность установки дополненийДля мака и никсов самый юзабельный вариант - MonoDevelop ( http://www.monodevelop.com/download/ ).Для vim можно использовать OmniSharp ( https://github.com/OmniSharp/omnisharp-vim ).Кросплатформенный полуредактор/полуIDE VS Code ( https://www.visualstudio.com/en-us/products/code-vs.aspx )Также существуют плагины для Atom'а и Sublime Text, но функциональность там достаточно сильно урезана.Кроме того, в данный момент JetBrains активно пилит свою IDE для шарпа (Project Rider), вероятно в ближайшее время станут доступны первые EAP. IDE заявлена как кросплатформенная, со всем решарпер-функционалом, поддержкой отладки, моно и .net core.SharpDevelop - еще одна IDE для C#, отличается малым размером (около 20мб) и опциональной портабельностью, при этом имея дизайнер WinForms и WPF, а также интеграцию с FxCop, StyleCop и прочими ништяками. Если хочется что-то по быстрому набросать, а выкачивать гигабйты нет желания, то возможно SharpDevelop будет лучшим вариантом.6. С# для мобильной разработкиЕсли нужны инструменты для разработке под мобилы, ставь сразу VS2015 и при установке выбирай все нужные компоненты.Больше информации тут - https://msdn.microsoft.com/ru-ru/library/dn771552.aspxИз актуальной литературы- Xamarin Mobile Application Development- Xamarin Essentials7. Дополнительные инструменты для разработки на C#LINQPad - сорт оф REPL, с возможностью быстрого подключения к БД и удобной визуализацией данныхdnSpy - декомпилятор, малоизвестный форк ILSpy, где реализована возможность модификации IL-кода прямо в EXE и DLL файлах, отладка IL-кода и много других фич для reverse engineering'а. Плюс няшные темы как в студииdotPeek - бесплатный декомпилятор от JetBrainsscriptcs - для запуска 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/766002.html
Чё то я не ебу, почему не добавляется второй пост из pastbin'a, судя по описанию ошибки, там какое то слово из спам листа и я ротегоебал искать в 7000 символах то слово, поэтому оставлю это на совести мочераторов.
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
На правах опа самты вопрошаю снова, как в WPF анимировать движение окна, при условии, что команда на движение подаётся через метод, не связанный с базовыми событиями любого контрола этого окна (типа там mousedown/keypress, т.е. обычные триггеры/ивенттриггеры/мультитриггеры не подойдут, разве что сейчас попробую дататриггер)? пробовал VisualStateManager, но либо не понял как его прикрутить собсна к окну в кзамле описал visualstategroup со всеми соответствующими анимациями просто между тегами window, перед гридом. не grid же мне толкать, либо неправильно вызываю метод VisualStateManager.GoToState(this, "aaa",false); из Model.
какую рсубд неуважаемые посетители этого итт тренделя выбирают для asp.net core? mysql же говнище, postgres? а насколько efcore умеет в него?
foobar
>>796193Какой-то неправильный спермовор, на дудке все SQL Server'ом пользуются.
>>796206mssql на линуксе это так себе
>>796212> на линуксе> asp.net
>>796220я про .net core говорю, или ты, даун, не осилил сего посыла?
>>796212Скоро же сделают. А так постгря. В ef6 не было codefirst и миграций, в ef7 codefirst завезли, а про миграции не знаю.
>>796225скоро это как СКОРО, ОЧЕНЬ СКОРО, или быстрее?
>>796235Первый вариант естественно.
>>796193MongoDB.
Анон, дай совет криворучке.Использую OpenGL через OpenTK для отображения картинок (1000x1000 - 3000x3000), но у меня оно медленно работает и память замусоривается.Схема примерно такая:Загрузить необходимые текстуры.Привязать текстуру.Нарисовать прямоугольник (с текстурой).Отвязать текстуру.Удалить текстуру (GL.DeleteTexture), так как она не используется далее. И так несколько раз.Но даже со сбором мусора вручную (GC.Collect) оно всё-равно забивает всю видеопамять вскоре.
Я могу как-то получать поток видео из html5 плеера с помощью webRequest'а? Хочу написать для себя десктопный твич плеер.
Как быстро прикрутить ебучую OAuth к части контроллеров уже существующего asp.net проекта(проект использует windows аутентификацию, но часть контроллеров нужно расшарить на внешний доступ)? Есть гайд для идиотов? Не хочется целый день с ней возиться чтобы досконально разобраться.
>>796514За день досконально разобраться? А ты смешной
Нашел пример по EntityFramework. Создаем класс и по нему БД. Проблема одна - там нет конекшн стринга а только <entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> <parameters> <parameter value="mssqllocaldb" /> </parameters> </defaultConnectionFactory> <providers> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> </providers> </entityFramework></configurationИ у меня не хочет подключатся к mssqllocaldb, пробовал все, названия инстансов с паппки АппЛокаль, пердолил консольку, в СКЛсервере подключается к серверу с именем компа. А вижуал - нет. ЧЯДНТ??!
Подписка на Visual Studio Dev Essentials бесплатная, или мне потом пришлют квитанцию на почту?
Господа, а не подскажите где взять вишмастер на LINQ Insight?
Двач, помоги разобраться с web-api, есть одна модель и один контроллер, маршрут указан в аттрибуте перед классом, пытаюсь сделать тест через postman и каждый раз при пост-запросе мне возвращает null, я убирал аттрибут, не помогло, в конфиге прописан CamelCaseResolver и имена полей он должен считывать нормально по идее, на стаковерфлоу толком ничего нет.
>>797314c emailом проебался, там string конечно же, но дела это не меняет, возвращет null
>>797320по-моему this.Json(примитив) всегда норовит вернуть какую-нибудь нёх по дефолту. попробуй исправить на new{success=true}. лучше, конечно, во всех вариантах возвращать одинаковую по структуре модельа вообще, я, может быть, уже запутался во всех версиях асп фреймфорков, но ты юзаешь православный MVC
>>797314Не по теме: почитай как RequiredAttribute работает с ValueType
>>797399с велью-типом Nullable<T> работает очень даже отлично
>>797406Я про это и говорил, в примере то нихуя не они, но надо же и знать почему, у нас же здесь не бидлокодеров тред, а? А? А?
>>797419ну, де-факто - отборнейших
>>797422Ну с таким то отношением...зло торжествует, когда хорошие люди бездействуют, так то!
>>797425так сюда не учиться приходят, в бОльшей массе, а узнать> я вот тут написал govno_kod_neim, как мне сделать pezpoleznaya_huinya_4erez_anus_neim
Господа, недавно ходил в вуз к дружане и увидел там, как он кодит на шарпе. Мне безумно понравился синтаксис, столько сахара, такая удобная организация, все просто отлично. Я попробовал написать пару простеньких скриптиков - я кончил. По сравнению с задристанной явой - шарп реально смотрится чудесно.Скажите, вот, я хочу учить сшарп. В какое направление лучше смотреть, какие у него перспективы, где чаще используется? Книжка head first C# норм или лучше players guide?
>>797443Не пойму, что такого есть в C#, чего нет в Java?
>>797460Ну, блин, вот реально, мне синтаксис показался каким-то "монолитным" что ли. Вот просто понравился, да и IDE охуенное, эта Visual Studio - чудо (хоть и монстроузоное).
>>797443Ты понимаешь, что ты будешь зависеть только от винды?
>>797464И что?
>>797468Когда фуллСтек станешь - поймешь. Веб это всегда линь, а не шинда с иисУчите лучше джаву, джиэс и постгрис. Иначе соснете со своим сишарпом как подрастетеЕще у джава божественный синтаксис - ловерКамелКейс, который идеально коррелирует с вебом, чего не скажешь про решетку За рулем писал, не придерайтесь
>>797464ты понимаешь, что ты долбоеб?
>>797495Твой НетКоре будет сырой еще лет 5
protected void Add(SomeContext db) { int i = 1; foreach (var p in items.GetAll()) { var city = new City { Name = p.Name }; city.Id = i; i++; db.Citys.Add(city); } db.SaveChanges(); }Как мне сделать это в одну строчку на LINQ?
>>797568на linq-в-одну-строчку этот код будет менее эффективнымprotected void Add(SomeContext db){ items.GetAll().Select((item, index) => new City {Id = index + 1, Name = item.Name}).ToList().ForEach(item => db.Citys.Add(item)); db.SaveChanges();}
>>797623но, если у тебя db.Citys типа DbSet<T>, но можно сделать db.Citys.AddRange(вся линка до тулист)
>>797480>Веб это всегда линьНе всегда.>>797512Уже сейчас есть Mono, Xamarin и Unity.
>>796182Анимацию лучше через Visual Blend фигачить.
>>796636Вроде через аккаунт майковский всё делается, а по умолчанию триал ставится.
>>797480Уже пишу на божественном Core и ссу жаваблядкам в лицо.
>>797739Что ты там пишешь, петя? Какая ось, субд, орм?
>>797781Абанта, посгрес, орм не использую, хватает даппера.
Прогач, взываю к тебе, может хоть ты знаешь что с этим делать? Возможен ли вызов из основного треда команды на приостановку тасков? for (int i = 0; i < count; i++) { await Task.Run(() => FullReg()); await Task.Delay(5000); if (checkBox1.Checked) { if (i % proxyswitch == 0 && i != 0) { //Task.WaitAll(); -- ТУТ ДОЛЖНА БЫТЬ ПРИОСТАНОВКА ВСЕХ ТАСКОВ System.Diagnostics.Process.Start(@"C:\Program Files (x86)\HMA! Pro VPN\bin\HMA! Pro VPN.exe", "-changeip"); await Task.Delay(10000); } } } while(int.Parse(CountFailedAccLabel.Text) + int.Parse(CountFailedAccLabel.Text) != count) { await Task.Delay(proxyswitch*5000); await Task.Run(() => ChangeIPHMAButton_Click(sender, e)); await Task.Delay(10000); //System.Diagnostics.Process.Start(@"C:\Program Files (x86)\HMA! Pro VPN\bin\HMA! Pro VPN.exe", "-changeip"); }
>>797825Объяви статический оbject и используй lock.
Анон, чита 23 главу Троелсена про Entity Framework и нихуя не понял и большинство элементов претерпели значительные изменения. Где прочитать нормально про EF 6?
>>797825https://social.msdn.microsoft.com/Forums/vstudio/en-US/ac5d86bf-54f9-403c-9249-dd9023bd5623/pausing-a-task?forum=csharpgeneral
>>797828MSDN
>>797843Гугл дает три сыллки. Какую тыкать?
>>797846все 3
>>796165 (OP)> элитный язык > платформозависимый> элитный
>>797867Что не так?Винда ОС для илиты, которая себе может позволить ОС за деньги
>>797867> платформозависимыйПрограммирую ASP.NET на макбуке, деплою на линукс.Виндой не пользовался уже пару лет.
>>797867>платформозависимыйДолбоеб не смог в чтение спецификаций и срачей в GNU сообществе. Маня, C# полностью независим от платформы, но зависит от исполняемой среды, которая может быть написана любым мимокрокодилом под любую платформу без оплаты в казну Билли. С таким же успехом мы можем влетать и кукарекать аля ЗАВИСИМЫЕ ОТ СРЕДЫ/ФРЕЙМВОРКА/ПАРАШИ
Посоветуйте годный расширений для Вижуал СтудииНа подобии Tabs Studio
>>797827>>797829Можешь по подробнее?Необходимо чтобы он приостанавливал таски, но не тред
>>797906Гугли TPL, а лучше наверни главу 19 Троелсена.У тебя есть множество потоков, которые действуют независимо, но что если они перебегают друг другу дорогу? Например, им всем необходимо произвести вывод своей работы в консоль или на вьюху. Чтобы программа не выдавала хуйню и не выкидывала исключение, можно выдать любой объект за некий светофор аля можно ли приступать к данному коду или нет. То есть, косвенно реализовывавется пауза.У Троелсена будет пример с 10 потоками, которые выводят числа от 0 до 9. Без данного светофора (lock), они все напишут хуйню из разряда 0,0,0,1,0.1,1,1,2... А если предоставлять вывод потокам по очереди, то они нормально выведут числа от 0 до 9.У тебя задача похожая. При смене IP адреса, ты блокируешь или выставляешь красный свет светофору для потоков, у которых в начале своей итерации или жизнедеятельности стоитlock(obj){} //Не пихай сюда код, иначе потоки будут его делать по очередиИ пока меняется IP, потоки ожидают своей очереди на строчке выше. Что надо сделать?1. Объявить единый для потоков объект, который будет являтся флагомprivate static object obj = new object();2. Функцию по смене IP адреса завернуть в конструкцию locklock(obj){ смена IP }3. В функции, выполняющей итерационное действие выставить пустую конструкцию locklock(obj){ } тут кодВ идеале, у тебя должен быть массив, информирующий об окончании итерации, для последующей смены IP адреса, если не ожидается окончание таска. Иначе, можно было бы прописать WaitAll();
>>797962Ну и собственно итог:Потоки, выполняющие итерационное действие приостанавливаются до тех пор, пока не смогут заблокировать самостоятельно объект obj. Так как они ничего с ним не делают, задержки между потоками не должно быть явным (её нету). А вот смена IP - действие длительное и замораживающее. Дождавшись окончание итерации или окончание всех тасков, что правильно и вообще пул потоков надо было использовать, происходит смена IP адреса. В это же время, итерационные потоки не смогут продолжить свой код, так как они не могут заблокировать объект obj, который используется сменой IP адреса. Как только IP адрес будут сменён, они смогут продолжить свою работу в штатном режиме.
>>797890Resharper>>797867еще один долбоеб пролез, где вас размножают, а?
>>797870>>797880>>797884>>798200Ололо, он вас затралел.
Есть одна форма. На ней несколько лейбелов. В них иногда меняются значения. Нужно их после изменения перерисовывать отсортировав по содержимому свойства Text. Можно это как нибудь красиво сделать через linq в одну строку или только цикл?
>>798473все, что можно сделать в цикле, можно переписать на linq. вопрос эффективности онли
>>798473Ты уверен, что это лэйблы надо двигать, а не текст местами менять? если я тебя правильно понялLabels.Text = sortedValues.ToString()
>>798541> Labels.Text = sortedValues.ToString()Labels [ i ] sortedValues [ i ]
>>798532Эффективность пока не важна, хочу разобраться с linq>>798541Да уверен. Потом может вместо лейбелов будут другие элементы. Интересует именно как отсортировать ControlCollection формы.
Читаю Троелсена. Я конечно понимаю, что введение - это введение, но где найти книг по EF 6 и WCF? А то после подробных объяснений базисных и не очень конструкций такая абстракция вообще не в радость. Особенно, когда пример WCF на основе службы Windows не работает
>>796172Нельзя создать экземпляр абстактного пацана, тащемтв
>>797962Обязательно надо ждать окончание итерации на всех тредах, где используется ип, иначе раз на раз будешь ловить эксепшн
>>798620> Читаю ТроелсенаЭто как советские учебники по физике - где-там полезный базис и тонны устаревшего материала. Не рекомендую
>>798548> эффективность не важна> разобраться в линк
>>798740Не знаю, базис по C# 6.0, TPL и LINQ зашёл, а вот EF 6.0 и WCF нет, хотя последний норм. Надеюсь, что WPF нормально пройдет, а ASP.NET у Адама изучу его.
>>798713Я же написал тут - >>797970Да и вообще архитектура хуйня. Надо итерацию в таск и ебашить тредпул с вызовом WaitAll();
>>797970Как поможет тут пул потоков?И таски по умолчанию юзают пул потоков, или я чего-то не понял?
>>798919http://professorweb.ru/my/csharp/thread_and_files/1/1_16.phpНа самом деле, мы не знаем, что ты пытаешься сотворить, но могу предположить, что брутфорс или парсер поеботы.
>>797962>>797970может ли лок принять Task.Delay???мне во втором пункте еще нужна приостановка после смены IP, если делать через тред слип, у меня весь поток повиснит
>>798939т.е. await Task.Delayfixed
Простите на верно ньюфажеский вопрос но никак не могу понять где в C# защита от идиотов вводящих неверные данные? Вот казалось бы простейшая прога. Но если пользователь введет текст, она вылетает. int i = Int32.Parse(Console.ReadLine());i++;Console.WriteLine(i);В Си я в таком случае ставил while ( Пользователь ввел хуйню) {Пусть вводит еще раз}И все работало, а здесь из-за вылета такого не получается.Может есть какой то более простой способ получать числа с ввода, который бы не вылетал?
>>799034int intValue;if (!int.TryParse(@string, out intValue)){ // ALERT}
>>799035Благодарю анон, не представляешь как мне помог. Теперь могу не боятся неправильных вводов.
Materials.Contains(item)ТуплюКак добавить сюда проверку (Materials.Name).Equals(item.Name)
>>799087шошо?
>>799087Не понял тебя. Куда добавить?
Написал через Отбой, всем спасибо за вниманиеТуплю сильно, пошел спать.Any(x => x.Name.Equals(item.Name)
Как на гите маркать багфиксЧерез Change ili Add?
>>799094через reset --hard
>>796176В каких из этих книг объясняется именно шарп и только шарп(т.е. LINQ, делегаты и т.д.), а не разжёвывается, что такое класс и что такое функция?Пытался осилить когда-то несколько книг по шарпу - не смог. Они все начинаются с объясния крайне элементарных вещей вида "чтобы сложить переменную a и переменную b, напишите a + b". Мне от таких вещей становилось крайне скучно и я забивал.В шарп чуть-чуть могу, но без всяких фич вроде лямбд и делегатов. Класс создать могу, метод написать могу, из стандартной библиотеки функцию вызвать могу. В принципе, больше ничего и не могу.
>>799109почитай конкретные главы троелсена и все. если тебе становится скучно, пропускай до сделующей главы. в чем проблемс?нет таких книг, которые не сначала, но и не о сложном. люди, как правило, системно подходят к обучению
>>799111трипл, поясни мне почему не албахари?
Привет ) я нуб хочу быть супер убер прогером и зарабатывать милион в секунду , а если по делу хочу вкатится в тему именно С# ,по средствам обучения индивидуального )хочу узнать у гуру ,если тут такие есть сколько приблизительно надо времени для того что бы хоть джуном стать )за ранее благодарю
>>7992043 месяца, но у тебя не получится
>>79920абаснуй , может че подскажет какой подход к изучению
>>799210Ты вместо точек скопокчки пишешь
>>799214Ага есть такой косяк ,для передачи доброжелательных намерений. Так все-таки может подскажите как лучше учить ? И критерии джуна на С#?и какое ориентировочное количество часов брать ?
>>799221присоединяюсь к этому, нужно цифры для расчетов
>>799182хз. почитай албахари, если тебе нравится
>>799221Инфа из шапки совсем не помогла?
>>799228Я пытался начать с Троэлсена , но как то не пошло по этому отыскал себе репетитора , я работаю и как бы времени не очень много . По этому я и спрашиваю у гуру что должен знать и уметь джун и сколько приблизительно часов придется оплатить репетирору ибо как бы бабки не малые )
>>799233> погромирование> оплатить репетироруподозревал, что пограмач улетает на дно, но вот чтоб уже
>>799235О папашки прогеры понабегали , когда есть желание и не особо времени и чуток денег лучше заплатить человеку который втеме и может объяснить нежели самому привозмагать
>>799233Если не можешь в книги, то лучше не вкатывайся... Репетиторы тут не помогут, все эти курсы, стань успешным айтишником за 2 месяца йоба курсов - хуйня
>>799240хзхз, имхо это будет тоже самое, что самоучеба + потраченные деньги. ну да, возможно, что-то тебе объяснят сразу, не придется расшибать лоб об гугол, но тут такое
>>799258Я это осознаю ,но все-таки если рядом есть человек который поможет кой че объяснит и скоректирует в случае чего , и подскажет может из своего опыта я думаю это того стоит. Полюс стимул учится ибо бабки плочены
>>799260Лучше читай сам, а вопросы в тред задавай
>>799264Ну почитал я Троэлсена но как бы там нет заданий ,которые можно было бы делать , а задачек в инете особо не отыскал ) опять таки мотивация к быстрому усвоению инфы ибо я уже не купил то что очень хотел в пользу учебы . А остается в том дерьме в котором я сейчас с теми перспективами которые мне светят если не шевелится достаточно фиговые
>>799276придумай себе микропроект с каким-нибудь ололополезным функционалом. мы поможем
>>799276Ты вообще чем хочешь заниматься? Веб/десктоп/мобилы. Хотя базовый с# в любом случае нужен
>>799278Десктоп, возможно мобилы ) в целом интересна тема робототехники
Пытаюсь запилить шахматы через Windows Form.Что за хрень в нем твориться с прозрачностью? Поставил у фигурки BackColor - Transparent и ее фон вместо того чтобы исчезнуть стал цвета окна. ВТФ, как это починить?
> Windows FormНАХУЯ?
>>799299Потому что новичок, и осваиваю пока это.
>>799286Если не дочитал, то дочитывай Троелсена и по WPF ченить. И запили калькулятор. Или вон, как чувак, шахматы сделай
>>799301Зачем осваивать мертвые технологии?Есть же ВПФ, пысть даже ты и будешь использовать 10% его функционала
>>799296на форме есть свойство TransparentKey. он, по сути, задает цвет прозрачности (звучит как лол)
Короче есть такая функция:http://pastebin.com/v5L3eqS7Помогите запустить ее на UWP. Выдает следующие: 'Delegate' does not contain a definition for 'CreateDelegate'
>>799344Всё. Исплавил сам. А ебался часа полтора.
>>799352Молодец! Скоро джуном будешь
Кто нибудь юзал классы из неймспейса System.Collections.Immutable?Там куча классов, типа:ImmutableArray, ImmutableDictionary, ImmutableHashSe, ImmutableList ImmutableQueue, ImmutableSortedDictionary, ImmutableSortedSet, ImmutableStack, ImmutableStackПри изменение элементов, они создают новый экземпляр коллекции, не меняя оригинальной.Для функционального программирования, это вообще прекрасно.
>>796165 (OP)Анон, расскажи, существует ли удаленная работа или даже фриланс в .NET?
>>799799Смешной вопрос, конечно, существует.Много ли и возьмут ли на эту работу тебя лично - другое дело.
Через 3 часа собеседование на сисярп+дотнет макаку. Знаю почти ноль, обещают какое-то письменное. Что прочитать, чтобы знать немного побольше? Что меня там может ожидать?
>>799699Только стринг
>>799882Гугли "Вопросы на собеседовании c# WPF/ASP.NET MVC/Xamarin" и тд, смотря в какой области кодить будешь
>>799699а вопрос в чем?
>>799914Кто нибудь юзал классы из неймспейса System.Collections.Immutable?
>>799920Зачем?
>>796235КОД ПОЛЬЁТСЯ МОРЕМ
>>799920кто-нибудь, конечно, юзал. для кого же они там тогда существуют?
>>799929Вот ты и ответил на вопрос
>>799921Лично я их попробовал пока в UI Test Xamarin. Передаю комплексный объект в метод через ImmutableDictionary.1) В языке появляется скриптова динамичность. Для объявления структур данных тебе не нужно создавать новые class/structure.Правда для этого уже есть dynamic (хоть он и mutable) + C# 7.0 вроде завезут "tutpe" и "записи"https://habrahabr.ru/post/280978/2) Независимо от сложности объекта ты знаешь что никто его не может поменять.Ты можешь сохранить этот объект на любое время не боясь его изменения/необходимости синхронизации.Вот read-only списки точно пригодятся.
Поясните как начать использовать C# 6.0? Что для этого нужно, VS2015 и выше?
>>799985Да или VisualStudioCode, там и IntelliSense есть и отладка.
А чо, есть смысл покупать на торрентах энтерпрайр версию VS 2015, или рядовому еблану хватит и community версии? Имею ввиду, сильно ли урезана community edition?
>>799990Погугли отличия
>>799992Гуглил, не нашёл ничего особо важного для себя на тостерах/мсднах/собсно майковском сайте, где указаны отличия версий но тут ведь возможно, что либо я пока что просто не пользовался функционалом, недоступным в комьюнити и доступным в других версиях, и когда узнаю, придётся перекачивать и всё такое, либо есть ещё какие то камни в испольовании комьюнити версии. И кстати, если купить на торрентах профессиональную/энтерпрайз и подкинуть ей легитимный ключ, обновления ведь всё равно будут приходить, или ребята в майкрософт чухнут, что я пиздюк и зобанят мне VS?
>>799990Меня напрягло больше всего:1) Отсутствие CodeLens (хорошо когда сразу видно кто ссылается на метод/класс)2) Отсутствие возможность построить карту классов и их зависимостей.Решил значит рефакторингом заняться, а не понятно как найти наиболее связанные классы.P.S.Есть конечно отдельные плагины, но они тоже платные.
>>799994>или ребята в майкрософт чухнутУ меня с самого начала стоит, почти год - полет нормальный.
>>796165 (OP)>2016Просто хуею с тех кто что читает про WPF! Вы совсем ебанутые? Вы еще про сильверлайт почитайте или вебформс. Учите блять.Net Core и JS/TS, а лучше английский выучите уже наконец, пиздец нахуй
>>800027А UI быстрый на чем делать? В текущем состояние JS может предоставить только нагромождение <div> + CSSВот когда, запилят нормальные WebComponent, тогда и приходи.
>>800027Джаваскриптоблядь выползла из своего шконаря, а ну полезай обратно и говно свое забери.
Какие задачи перед джуном ставят в работе?В десктопе и вебе например.Поясните плз.
>>800056Обычно баги фиксить несколько месяцев и вкатываться в проект.
>>800056Раздвигать булки по первому требованию тимлида и команды.Первое время будешь весь день фикситьмелкие баги.Это будет обязательно в каком нибудь интерпрайзном говне, в котором тебе никто не поможет,тк его авторы уже умерли от старости/малярии в Индии.
Поясните за F#. Как же меня заебал этот ООП.
>>800152Попробуй лучше Clojure, он вроде и по .NET есть,а если что потом сможешь перескочить на Java или JS (ClojuseScript)
>>800158Неплохо, но хотелось бы все же про F# услышать. Стоит он того, чтобы в него вкатываться?
>>800168F# это OCaml и по синтаксису ближе к Haskel, а это значит конструкции типа:[1; 2; 5]|> List.map ((+) 1)|> List.filter (fun x -> x % 2 = 0)|> List.sum // 8Зато хорошая поддержка .NET (и только его)Clojure это лисп:(defn hello [x] (println "Hello" x))(hello "World")
>>800152Если хочешь вкатится в мл-подобную хуиту без задач и проектов, за которую неплатят от слова совсем – дерзай.
>>800182На платят похуй, для кода под личные нужды надо, сишарп уже просто в одном месте. Вроде годный дотнет, студия и комьюнити, но от ООПа во всех щелях хочется вешаться.
>>799909Репорчу результаты. У них занюханная конторка, работают они на апворке, штат-25 тел, к концу года планируют до 40 расширяться, как мне сказала эйчэрка. Находятся в здании какого-то то ли еще работающего, то ли уже нет горного института. Вопросы на собеседовании-хуйня полная, в плане сложности. Первый месяц они не оплачивают, потом при полной загрузке-20к. Екатеринбург. Полное говно кароч, послал их в жопу.
>>800187> ООПа во всех щелях хочется вешатьсяВ чем проблема?1) First-class function - есть (Func<T>, Action<T> и тд)2) Immutable структуры данных (списки, словари) - есть, а в C# 7.0 еще больше будет3) Pattern maching - будет в 7.0Пиши в функциональном стили, сколько влезет.
>>800195Значит я просто ебанутый. Почему-то не получается, через месяц-два уже не могу распарсить своё скорописное функциональное дерьмо и проще написать с нуля, чем рефакторить в нормальный ООП.
>>796165 (OP)Гайз, хелпайте. Не могу понять, как дебажить консольное приложение в VS CODE? Как && что настроить? пикирелейтедИ алсо ещё вопрос: у меня цветовая тема для VS CODE одна: называется chelevra. Как бы мне её запихнуть в Visual Studio? Там разные форматы, а в маркете такой цветовой темы нет.
>>800252> как дебажить консольное приложение в VS CODEЭту зеленую кнопку нажать не пробовал?И поменяй язык интерфейса на английский уже. Тебе самому не противно пользоваться такой локализацией?
>>800277
>>800277Это таск надо прописать?
Сап, дотнетач.Мне нужно из C# кода включить на удаленной машине групповую политику(пикрелейтед). У меня есть возможность запустить на удаленной машине PowerShell скрипт или просто выполнять отдельные команды в cmd.exe.С помощью ProcMon мне удалось выяснить что после включения политики через ГУЙ в реестре создаются такие ключи:HKCU\Software\Microsoft\Windows\CurrentVersion\Group Policy Objects\{какой-то страшный GUID}Machine\Software\Policies\Microsoft\Windows NT\CurrentVersion\Winlogon\SyncForegroundPolicyHKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\CurrentVersion\Winlogon\SyncForegroundPolicyСудя по гуглу, просто взять и без задней мысли изменить свойство политики специальным командлетом нельзя т.к. такого командлета нет. Как мне совладать с групповой политикой? (про возможность создать ключи в реестре я знаю, но не понимаю откуда берется GUID)
Стоит ваш сисярп учить первым языком?
>>800375Смотря для чего тебе язык.
C# ONE OVE ❤
>>800375Да. Сишарп это дельфи третьего тысячелетия.
wintellectnow годнота или говно?
>>800498да, зимаскоро.
>>800284У меня эти файлы (launch.json и tasks.json) VSC создала при первом открытие проекта.
>>800188>Знаю почти ноль>послал их в жопуХм.
>>800616И нормально компилятся консольные приложения? Давно обновлял VS Code?До сих пор пытаюсь, чтобы дебажило. Ничего не получается. Мб версия баганая. Сегодня обновил. А раньше не чекал.
Почему RiderRS ни в какую не хочет корректно выводить кириллицу при билде, как пофиксить?
>>800641Вроде сама последняя (macOS)
>>800669> launch.jsonПокажи launch.json, пожалуйста.
>>800671Уже показывал >>800277
>>800675А что в "programm" прописывать?
>>800678test-core-clr это название проекта.Я ничего не прописывал, эти файлы (*.json) создались автоматически.
>>800678P.S.Ты сам .NET обновлял до preview2 ?https://www.microsoft.com/net/core#windows
>>800688Угу. Уже обновил сегодня.
>>800686Ладно, спасибо за помощь.Собираюсь использовать его тогда только как редактор кода, дебагать буду же, наверное, на Visual Stduio. Больно уж красивый этот VS Code.
>>800686постой, а как ты проект создавал?
>>8009241) Создал новую папку2) Отрыл в ней терминал (консольку)3) Ввел dotnet new
Скоро буду обучать одного парня C# с нуля. Потом он хочет перейти на Unity. Он гуманитарий, английский знает.Как я планирую его обучать C#: скажу чтобы самостоятельно дома читал C# Players Guide, делал задачки оттуда, я прихожу к нему раз-два в неделю и мы разбираем, что у него не получилось, что не понятно. Что бы вы добавили или сделали по другому? Какие программы можно попробовать написать для закрепления материала (после прохождения книги или во время)?
>>801033>одного парняМоя ванга прорицает, что тот парень - это девушка.>сделали по другомуЛучше конфу сделай и сиди в ней по вечерам. Мотивация писать программы и сразу их показывать/обсуждать будет выше из-за быстрого отзыва. Идти домой лишнее, единственное исключение, если посиделки закончатся годным трахом.
>>801033сколько берёшь с него?
>>801045Лол, я репетитор, а он мой первый ученик.
>>801048600 за 90 минут
>>801050мухосранск или миллионник?
У вас что, НЕТУ МНОЖЕСТВЕННОГО НАСЛЕДОВАНИЯ? Думал параллельно учить сисярп, но лучше возьмусь за свифт, лол. Ебаный стыд, нахуй. ООП язык без множественных наследований, блять.
>>801049Тогда все тлен.Ходи, отбывай часы, бери баблосы, а там хоть книжку по шарпу ему вслух зачитывай - похуй.
>>801059А зачем тебе множественное наследование? Просто чтобы было?Интерфейсы/композиция намного удобнее.
>>801059Ю каннот инту интерфейс?
>>801061Мне не похуй, поэтому я и написал сюда.
>>801072А ты уверен, что сисярп подходит для обучения с нуля? Язык обладает спецификой - ООП. Не лучше начать со скриптопараш/Scheme?
>>801059> НАСЛЕДОВАНИЯРобер Мартин тебя первого обоссыт
>>801059Все современные ООП языки делаются без него, та же скала. А в том же свифте оно через протокольный анус сделано.
>>800630Тащемта кодить и знать теорию - разные вещи. Я, если честно, не смогу дать определение классу, с трудом на пальцах ещё что-то объясню, если надо, но это не мешает мне уметь в ООП.
>>801059Вообще весь ООП пора на помойку. Наоборот хорошо, что его кастрируют.
Подскажите что за хуйня. Когда я отлаживаю UWP приложение у меня брейкпоинты уходят на начало функции. Как это исправить?
>>801108убирай брейкпоинты, дебажь как пацан - через Console.WriteLine();
>>801108Плюсую, кстати. Я сам методами проб, ошибок, изучения чужого кода научился кодить. Вот ты сказал про класс и я понял, что не смогу объяснить - что это такое, зато применяю постоянно же. Вот что за хуйня?
>>801115А что ему на замену должно придти?
>>801135судя по всему, у тебя pdb файлы не соответствуют текущему исходному коду. удали все в bin/obj, попробуй заново сребилдить солюшн>>801137> Вот что за хуйняотсутствие словарного запаса?
>>801137> научился кодитьУгу видал я это твое "научился кодить" помноженное на желание менеджера "сделать побыстрее".Потом либо приходится заново переписывать, пытаясь вносить изменения точечно. Либо, если понимаешь что это растянется на долго - работу менять.Вот за это индусов и никто не любит, вчера он коров пас,сегодня "кодит" без малейшего теор. знаний об архитектуре ПО.
>>801141Пересоздал весь проект, и ничего. Делаю в юнити.
>>801157Это потому что ты на какие-нибудь объявления переменных ставишь брейкпоиты.Это не исполняемый код (на уровне байткода) и VS/Xamrin смещает их к ближайшему возможному месту для брейкпоита (начало функции).
>>801155Вот ты злой такой. Обнять бы тебя и вместе так сидеть, чтобы ты не злился, а потом мы бы поцеловались, независимо от твоего пола. Просто хочу посидеть с тобой в обнимку, чтобы ты не злился!
>>801077ООП можно не использовать, писать программу в одном классе. По поводу питона - зачем его изучать, если все равно потом переходить на C#?
>>801220Хм, я же вроде был сама вежливость, даже ни одного ругательного слова не сказал.Да и по философски к этому отношусь, ибо это уже стало нормой.
Если Int32 это структура, то почему не может быть null?
>>801362Пиздуй читать базовые книги. Любая структура (struct) НЕ может быть null.
>>801372Nullable<int> pizdatvoeymamki = null;pizdatvoeymamki в данном случае разъёбаная структура и при этом null;
>>801372Nullable тоже структура
>>801375>>801377Тогда почему когда я вызываю HasValue то NullRef не вылетает?
>>801388А почему должен вылетать NRE? Читай как он работает или вызови GetType, получишь NRE.
>>801353Подскажет кто по сабжу?
>>801402в классе Lib:public Book this[int index] { get { throw new Exception(); } }
>>801402http://metanit.com/sharp/tutorial/4.10.php
>>801410Спасибо!
>>801375Полуебок, это синтаксис такой, нет там никакого присваивания null. Смотри картинку с IL-кодом:1) Вот как выглядит присваивание null (ldnull и starg.s X)2) Здесь происходит сброс полей структуры Nullable<T>https://msdn.microsoft.com/en-us/library/system.reflection.emit.opcodes.initobj(v=vs.110).aspx
>>801419ХУЯ ПИЧОТint? n = null;n.GetType();
>>801422int? n = null;n.GetHashCode();и нихуя
>>801400Ну так если проперти на нуле вызывать, то нулреф должен вылетать. ToString вызови и не получишь.
>>801424при геттайп() происходит боксирование жы а хэшкод виртуальная функция, к тому же, для значимых типов там вообще по дефолту идет рефлексия по полям/пропертям, кроче, для выброса НРЕ нужно постараться
>>801430Подытожим: 1) Nullable как и любая структура не может хранить null, но имеет свои правила боксинга.2) Nullable имеет особые правила боксинга: Runtime боксит не саму структуру, а ее Value.При этом он проверяет HasValue и если HasValue равно false, то возвращает null.https://msdn.microsoft.com/en-us/library/b3h38hb0(v=vs.110).aspx (раздел Boxing and Unboxing)3) Метод GetType() не переопределен в Nullable<T>, по этому он вызывается у базового класса object в (C# все наследуется от object).Для этого Runtime приходится делать боксинг, а как мы знаем (2) там свои правила и возвращается null, это и вызвает NRE.Закрепляющий пример на картинке: ToString() на int? не вызовет ошибки, но после боксинга к object, уже вызывает NRE
>>799305>Зачем осваивать мертвые технологии?Несколько месяцев искал работу, взяли только по вакнасии на винформс.Так сложилось, что на древние технологии берут всех, желающих мало.
>>799305на одном из собесов меня завернули потому што я не знаю аспформы, кек. молодая динамично развивающаяся фирма
Как обработчику клика мыши передать определенную строку? Да, я знаю что можно воспользоваться наследником EventArgs, но проблема в том, что я не вызываю это событие гдето в коде явным образом, так как же передать по клику мыши строку в обработчик?
Господа, кто пишет под Core, подскажите - как заставить Serilog писать TState в логи (синк - RollingFile)? В консоли это всё отображается, а в файл писаться не хочет. По идее, TState должен автоматически добавляться к записи лога, по крайней мере так получается по исходникам Serilog.Может нужно как-то изменить outputFormat?
>>801033Ему нужен не C#, а что-нибудь по проще. Предложы Visual Basic.А то скоро каждый гуммнонитарий будет знать C#.
>>801602>А то скоро каждый гуммнонитарий будет знать C#.Язык очень простой. При желании можно и макаку писать на нём научить.
Как в вижуал студии 2015 панель с открытыми окнами переместить с топа в боковую сторону? Заебали 100500 файлов\
>>801669
>>801499>>801530Легаси. Если вы не в ебаный стартап к хипстерам-вейперам идете, то этого не избежать.
Шарпаны, я поставил себе VS2015 и она теперь предлагает мне заменить конструкции вида [code lang="c#"]if (someHandler != null){ someHandler();}[/code]на [code lang="c#"]someHandler?.Invoke();[/code]Но у нас проект на .net 4.5 и многие сидят на vs2013, у них же не будет работать эта хуйня? Или я чего-то не понимаю?
>>801756Так а ты им скажи что теперь весь код зохвачен новым компилятором и пускай перекатываются, 2015 студия вышла хуй знает когда уже.
Антош,Как установить sharpdevelop на usb? Есть пека на которой у меня нет админских прав, но нужно на нем кодить.
>>801756эта фича из C# 6.Оный почти весь поддерживается на .NET 4.0 и 4.5пруф: https://stackoverflow.com/questions/28921701/does-c-sharp-6-0-work-for-net-4-0Однако на студии 2013 прикручивание шарпа 6 связано с геморомhttps://stackoverflow.com/questions/27093908/how-to-enable-c-sharp-6-0-feature-in-visual-studio-2013Так что можно юзать только если все товарищи перейдут на 2015
>>801814А зачем он тебе, если есть рабочая VisualStudioCode?
Чем в WPF отличаются друг между другом User control и Custom control? Что лучше использовать для кастомного datagrid'a?inb4 google.ru/... stackoverflow.com/... и прочие не надо позязя, я сам параллельно гуглю, просто вдруг какой нибудь анон сам может объяснить
>>801846Любви и добра!
>>801817спасибо
>>801846Затем, что в нем отсутствует пикрил. Ты спрашивай если тебе что-то не понятно, а то будешь до смерти спермохлебом.
Программач,Как записать 2D массив в CSV файл? Именно так, чтобы строки стали строками, а ряды - рядами.
>>802539Сериализовать?
>>802539Напиши простенькую функцию в два цикла for.
>>802538Ты с выбором языка/треда кажись ошибся.Прошу вас пройти в тред для прыщеблядков >>780630 (OP) и фапочку из фольги одеть не забудь.
Сап двощ мур мур мур мур.Расклад такой.Есть у меня 2 тачки:1 - билд сервак с бамбу на моей стороне.2 - виртуалка с iis на другой стороне океана. НА компе - Win 8 EnterpriseЗадача ебануть автодеплой с бамбу туды.Web deploy не работае т.к. windows 8 (не сервер) - http://www.iis.net/learn/install/installing-publishing-technologies/installing-and-configuring-web-deploy-on-iis-80-or-laterКакие есть ещё варики котаны?Можно конечно с билд сервака ложить зипку на удаленный, а там какой-то скрипт раз в 2 минуты чекает и распаковывает папку в нужное место.Но не хочется эту елду делать с нуля.Есть ли какие-то готовые решения?
>>799995Codelense уже в community есть
>>802563То есть это нормально, да?Алсо, эксперты так и не ответили на мой вопрос >>801814VisualStudioCode точно так же не могу установить на флешку. Это вообще возможно?
>>802822https://github.com/garethflowers/vscode-portableсмотрел?2 секи в гугле
>>802823Сорян, проебал. Сейчас попробую.Спасибо.
>>801059Множественное наследование нарушает философию ООП. Интерфейсы - чистый, элегантный и совершенно неизбежный способ.
>>802839что за говно? куда писать?
Под мак и линукс можно писать на С#?
>>802545ШТА?Я - ньюфаг.
>>802843да
>>802846https://www.microsoft.com/net/core#windows
Подскажите где в VS можно настроить подсветку синтаксиса C#?Гугл вроде посылает в Options->Environment->Fonts and ColorsНо там ничего не нахожу, в Text Editor только вижу настройки к C++ которые никак не влияют на C#.
>>802838Любое наследование нарушает философию ООП, спроси Алана Кея.
>>802847Ещё есть Mono.
>>802563Ну разве не пиздец?
>>802823Отлично посоветовал, уже все работает блядь.Что за хуита, анон?
>>803114хуй знает. я ж не чекал.Но вот что нашёл. https://github.com/garethflowers/vscode-portable/issues/6снова 2 секи
>>800188Случайно не SharpDevelopers контора? Хотя весной у них прайс пожирнее был
>>800188>Первый месяц они не оплачиваютНеужели такое ещё бывает, лол.
Если кто встречал, дайте линк на код задания "частотный словарь" плз.
>>803351Не актуально.Другой вопрос.Есть кодstring[] words = text.Split(new char[] { ' ', '!', '.', ',', '\n' }, StringSplitOptions.RemoveEmptyEntries); var result = words.GroupBy(x => x) .Where(x => x.Count() > 0) .Select(x => new { Word = x.Key, Frequency = x.Count() }); var sortedres = result.OrderByDescending(x =>x.Frequency); foreach (var item in sortedres) { Console.WriteLine("Слово: {0}\tКоличество повторов: {1}", item.Word, item.Frequency); }Почему не работает '\n'? Надо чтоб учитывался перенос строки.
>>803435\r\n
Анон, как получить доступ к панели ItemsControl в WPF из кода?
>>803438Ругается на количество символов
>>803441это строка, а не чар
>>803441попробуй оттакstring[] z = A.Split(new string[] { ",", "\r\n" },StringSplitOptions.RemoveEmptyEntries);
>>803446Эм. В си/плюсах знак переноса строки был чаром, т.к. добавлялся в конец строки.В с# знак переноса строки является строкой? Не понимаю.
C# такой охуенный, что я не могу на нем писать. Только заглядываю в документацию, как обканчиваю монитор, иду курить, а затем без сил падаю спать.
>>803449Работает, спасибо. Почему так: >>803450 можешь ответить вкратце?
>>803455предполагаю, потому что \r - символ спецвозврата каретки или как там мать её называют, а \n - спецсимвол перехода на новую строку. или наоборот, это лучше всего на мсдне проверить, если важно. итого, \r и \n - отдельные символы, следовательно, комбинация двух символов - уже строка, ну и видать отдельно символа \r\n не завезли в сисярп.
>>803450\r Возврат каретки\n Новая строка (перевод строки)По факту, ты можешь сделать '\r','\n'. И он не являетя строкой. Если ты просмотришь некоторые доки на наличие байта \r, то поймешь почему так
>>803460спецсимвол возврата, самофикс понел да.
>>803460>>803461Спасибо.
>>803440дай ей имя.
>>803470Не отзовётся. Она же генерируется
>>803460> ну и видать отдельно символа \r\n не завезли в сисярп. Environment.NewLine
Как правильно сюда дать ссылку на массив mas ? public void randmas() { Random r = new Random(); for (int i = 0; i < mas.Length; i++) { mas = r.Next(100); } }
>>803495в смысле "сюда"? в метод? в сигнатуре в качестве параметра указываешь массив в качестве параметра:public void randmas(int [] mas){}
>>803498
>>803500Я дебил, не туда копипастнул.
>>803498спасибо.
Сисярпаны, возник вопрос.Нахуячил я некоторое количество контролов на формочку, все унаследованы от UserControl. И вот теперь в них во всех есть пара одинаковых совершенно флагов.Выглядит это как то такpublic partial class MyControl : UserControl{ public bool isNew = false; public bool isFirst = true; public MyControl() { InitializeComponent(); }}Соответственно ечсть еще MyControl2, MyControl3, MyControl[n] и так далее.Прорблема в том, что мне сейчас надо все их обходить в цикле и проверять эти самые переменные. Но сделать это по человечекски не выходит, т.к. все они разные и надо каждому типу делать свой цикл и хуярить в него только контролы конкретного типа.Можно это как нибудь обойти?
>>803507Интерфейс. Или класс MyUserControl и от него уже все остальные.
>>803507Берешь троелсена и ебошишь тему наследованиеЗапили им интерфейс или абстрактный класс с определением тех булов. Затем наследуй от него и еби свои говноформы как хочешь. Вместо Object'а должен быть UserControl или любой другой базовый класс. Можно через интерфейс.
Ситуация следующая: есть WPF окно с DataGrid по ценру. В датагриде отображается контент, загружаемый с сервера. Окно можно ресайзить (вслед за ним ресайзится и датагрид). Проблема такая: когда датагрид видит, что с его текущей высотой не вмещается весь контент, он ресайзит себя либо до границ экрана по высоте, либо пока все не поместиться. Мне это нахуй не нужно, мне нужно чтобы отображался скролл в таком случае. Как этого добиться?
>>803525ScrollViewer
>>803526Это я пробовал. Same shit. Выглядит в окне это все так: имеется грид с тремя строками. У первой и третьей фиксированая высота. У второй стоит minHeight. В эту строку и засунут датагрид.
>>803530дай пример и mock объект
>>796165 (OP)бот для телеграма стрим c# задавате ответыhttps://www.youtube.com/watch?v=x4m8C3veHic
>>803700Хуи сосёшь? Бан желаешь?
Чего оно ругается?
>>803770Пиздец, возвращайся обратно в c/c++ тред
>>803779Не был там с прошлого года, сорре.По сабжу подскажешь чего?
>>803781Методы мин и макс должны возвращать тру или фолс в данной ситуации, а не циферки.
>>803782Но если я поменяю на булево, то оно все равно ругаться будет, я уже пробовал.Ошибка где-то еще мб?
>>803784
>>803784Как ты его меняешь? И какой тип возвращает smax? В любом случае, ты не ответишь на вопросы и поэтому я отвечаю заранее Convert.ToBoolean(smax(...)); или smax(...)>0
>>803787>Как ты его меняешь?Пишу в методе его тип - bool.>И какой тип возвращает smax?Никакой, это делегат для sortmaxUPD я забыл менять тип делегату. Все заработало, спасибо.Ты тут еще долго, у меня еще пара тупых задачек есть?
>>803785У тебя делегат все ещё инт, по идее.
>>803790да-да, все так и было.
Вот еще, тут тоже не пойму в чем дело. С this перемудрил где-то?
>>803789>Пишу в методе типРаспаковываешь аля (bool)smax(...);? Эквивалент, но я хз, что у тебя пошло не так.>никакойТак то делегаты могут возвращать типы. Он служит контейнером для неизвестной заранее функции. Например, нажатие по кнопке. Хуй знает, что надо делать, при её нажатии. Поэтому ты говоришь делегату (пиздабол я - событию, который своего рода делегат), что тебе надо исполнить это. P.S. Изучай логику обратных вызовов в любой из областей. Хоть в схемотехнике. Работает также.>Еще пара тупых задачекЗадавай, но если будут огромные пробелы по синтаксису. Пошлю штрубить Троелсена
>>803818вон выше>>803803
>>803803Сука (горит уже), ты хотя бы кидал определения класса Book, который насилуешь. И да, не еби мозг сеттером1. Не используй второй пикрилейтед, если не требуется проверка выставляемых данных. Ты можешь реализовать точно такую же конструкцию за счет автоматического свойстваpublic string Author {get;set;}В такой конструкции и приватная переменная не нужна, потому что ты ничего не делаешь, по сути. В Java тебя бы заставили писать функции GetAuthor и SetAuthor, что в C# скрыто за словами get; set;2. Приватные переменные начинаются с маленькой, а публичные с большой. Поэтомуprivate string author = string.Empty;public string Author {get;set;}3. String - ссылочный тип и поэтоу private string Author у тебя по умолчанию null. А присвоить ему значение нельзя, потому что ты не выделил память под него, поэтому либо ты используешь автоматическое свойство или пишешь private string author = string.Empty;А еще, давай я помогу за денежку написать это говно, которое требует от тебя ВУЗик. Потому что чем дальше, тем больше вопросов у тебя будет. Скайп: live:sparin285
>>803823Хотя я долбоеб и ошибся. Это когда ты получаешь объект, да и по умолчанию он хз чем должен быть. В любом случае, а какому типу равен Author?
>>803823>Сука (горит уже), ты хотя бы кидал определения класса Book, который насилуешьЗакинуть весь код? Окейhttp://ideone.com/kYa4Qm>не еби мозг сеттеромЭто что?>А еще, давай я помогу за денежку написать это говно, которое требует от тебя ВУЗикЗаманчивое предложение, но увы. Да и толку от такой учебы, так я хотя бы строки кода до кучи собираю, а так вообще ничего не запомню.
>>803825>какому типу равен Author?стринг
>>803828забыл мейнhttp://ideone.com/jPWj9z
Карач, я думаю, что всё проще, чем я думал.Ты объявил массив ссылочного типа. По умолчанию, ссылочный тип равен null. Прежде чем начать с ним работать, тебе необходимо выделить под него место, банально применив стандартный конструкторfor(int i =0; i<10; i++)arrLib = new Book();По факту, дописав в класс Libpublic Lib(){for(int i =0; i<10; i++)arrLib = new Book();}И вообще, если хочешь понимать, что ты делаешь, то начни с Троелсена, имхо это уже базис идёт, за что здесь могут послать нахуй.
>>803828Пару косяков нашел - забыл конструктор по умолчанию и при получении индекса массива надо отнимать еденицу, а не прибавлять.Дописал конструктор, однако проблема та же самая, говорит нет экземпляра обьекта. public Book() { Autor =""; Name=""; Publish=""; Printing=0; Price=0; }
>>803836Парень, прошу. Прочитай Троелсена. Первые 10 глав. Тебе хватит. Остановись.
>>803835Да работает, спасибо.За рекомендацию почитать тоже спасибо, месяц пропустил - хз что вообще пишу (
Анон, срочный вопрос про WPFЕсть стул с игрой, в которой используется отрисовка через Geometry и анимация по пути, который опять же Geometry.Что использовать, если без анимации не как? Visual, в котором непонятно как реализовывать анимацию, но производительный аки хуй? Или Shapes.Path, который поддерживает всё необходимое с избытком, из-за чего менее производительный?Ожидаемое количество объектов до 1000, из них половина анимированы. Хотя можно разделить на 500 Visual и 500 Shape, но это частичное извращение.Киньте примеры анимации с использованием Visual, если не сложно.
Есть короче одно WPF приложение, в котором нужно сделать поиск по столбцам. Пытался было переделать стиль DataGridHeaderStyle, НО! в нём 2 обязательных именованных части - ректанглы, и чому то вставленный в грид текстбокс не отображается хоть убей. Делать КастомКонтрол тоже не получается, потому что не могу унаследовать класс кастом контрола от класса DataGridHeader, потому что его просто нет или я не нашёл. Поэтому, на данный момент мне в голову пришёл следующий вариант: сделать юзерконтрол, в котором вверху будет ряд текстбоксов в стекпанеле, а под стекпанелью датагрид, ну и собсна, сделать так, чтобы ширина текстбоксов совпадала с шириной столбцов DataGrid. НО! этот вариант мне кажется уберуёбищным, как тебе кажется, программач, имеет ли место такая реализация, или так пишут только мудаки и нужно ебать до смерти header'ы у самого DataGrid'a?
Обмазываюсь решарпером. Были у меня места, где я через linq проверял наличие определенного объекта в коллекции через Anyif (!collection.Any(x => x.id == id))И вот вдруг решарпер предложил мне поменять это условие на if (collection.All(x => x.id != id))И я не могу уловить суть этой оптимизации. Чем это лучше, на вид все одинаково.
>>804073оператор примененный к аргументу лучше.
>>804073Считается что отрицание в if уменьшают читаемость кода.
>>804096Чем лучше?Есть массив 1, 2, 3Any(x == 2)Дойдет по 2 и вернет trueAll(x != 2)Дойдет до 2 и вернет falseЧисло шагов одинаковое. Что не так?
>>804097Так это оптимизация кода или оптимизация стиля его написания?
>>804100ну у тебя в условие if функция не должна принимать значение, т.е. тело самой функции че там произойдет не учитывается, а в примере решарпера принимается аргумент, т.е. учитывается то, что происходит в теле.я убитый, как то так.
>>804103стиля
>>804112логики же! какой нахуй стиля!?!?
>>804114> какой нахуй стиля!?!?> Так это оптимизация кода или оптимизация стиля его написания?Ну вот хули ты к словам препираешься, кроме тебя все все поняли и так.Я же выше написал:> Считается что отрицание в if уменьшают читаемость кода.
>>804073На 3 символа короче, привыкай ценить лаконизм.
>>804121> кроме тебя все все поняли и так.А это уже и не я, это какой то посторонний анон.А у меня еще вопрос. Решарпер люто настаивает херачить половине методов модификатор private. Тут я как бы понимаю зачем ему это. Но стало интересно, отражается это как то на производительности или это просто секурность?
Поясните нубу за код. Он ищет файлы в указанной директории. Нашел в интернете, использовал, работает.Но я не очень понимаю, что такое IEnumerable, как работает и что с ним дальше делать. Прочитал, что это интерфейс.Я так понимаю на скрине функция. Я создал переменную типа IEnumerable и присвоил ей значение SafeEnumerateFiles(<мои аргументы>).Потом использовал foreach, чтобы достать все найденные значения. Все правильно сделал?Почему здесь нельзя было использовать массив или коллекцию, а нужен интерфейс и что это вообще такое?
>>804142Да фиг его знаешь.Если есть возможность, то из public/private надо выбирать конечно private, что бы API/контракт класса был почище.В C# если нет модификатора, то метод/поле считаются приватными, но при этом есть два подхода:1. Resharper и Rider IDE (которая сделана на IDEA+Resharper) хочет явно это проставлять.2. В XamarinStudio наоборот редактор подсказывает что "private" писать явно не обязательно и их можно удалить.
>>804148Чувак читай книжки из шапки или иди в прикрепленный-тред.Должно быть стыдно, приходить в тред языка с такими вопросами.
>>804148даже не знаю, куда тебя первее послать читать
>>804148> Почему здесь нельзя было использовать массив или коллекциюА кто сказал, что нельзя? Просто делаешь возвращаемому значению ToList или ToArray
>>804142>отражается это как то на производительностиБуду удивлён, если как-то отражается.
>>804007Нашёл, короче, как текстбокс отобразить. Panel.ZIndex поставить больше нужно было.
>>804172На 32 разрядных системах теоретически может оторажаться. Для публичных типов обычно генерируются более длинные ссылки. На 64 разрядной скорее всего даже в этом нет разницы.
Что быстрее работает C# или Java?Есть ли сравнения каким-то бенчмарком?
Господа, может кто знает где бесплатно и без смс скачать курс ITVDN на С#, видел первые ролики, оч годно объясняет.Буду очень признателен.
>>804316на nnmclub в своё время скачал
>>804318А их чтоли потерли?
>>804322хуй его знает, иди да проверь
>>804316Вопрос снят, в первый раз гугл подвел, но не тут то было.
>>804318 >>804322Нашел на рутрекере аналогичную раздачу, спасибо за участие.
>>804282Бенчмарков полно, но к любому из них можно высказать обоснованные претензии.Вот известный бенчмарк, если кому-то интересно: http://benchmarksgame.alioth.debian.org/u64q/csharp.htmlДостаточно знать, что .NET и Java обладают сопоставимой скоростью, Mono, возможно, немного медленнее.
>>802817ролл
Мужики, можете в след. тредах чето по ASP.core в шапку забросить годное?
Где можно посмотреть код логики годного калькулятора? Пробовал написать сам - говно. Индуский код в гугле - говно. Хочу натырить заготовок граммотных на будущее
>>804570MSDN C# Samples
>>804694> логики годного калькулятора> MSDN C# Samples> Индуский код
>>804570>Не может написать каклькулятор>Говорит, что индусский код говно.Я так и не понял. Ты крутой или тупой?Чего ожидаешь от калькулятора? Применения паттернов/интерфейсов/дипенеденси инжекшена/просветления аллаха?это ж блять, калькулятор.
Я что то не понимаю в математике, или знак "^" в си шарпе не возводит в степень, а делает что то другое?
>>805040Пиздуй читать книги это XOR
>>805046Спасибо, теперь понятно почему такие странные результаты выдает. Можно и повежливей было
>>805070есть какой-то адекватный способ использовать Route атрибуты на WebAPI, но при этом юзать MessageHandlerPipeline для той или иной группы маршрутов?
>>804836WPF MVVM CALCULATOR BASED ON REGEX FUNCTIONS AND MOTHER OF ALLAHПроиграл на всю квартируАнон, поясните за кэширование в WPF.Как применять?Как работает?
>>804836> /дипенеденси инжекшенаКстати, как протащить энтити контекс через ДИ?
>>805157у тебя должен быть один контекст для реквеста, если это веб прилага, или сам определяй lifetime.
Есть один текст, который нужно заменить, причем что там - неизвестно. Сложно объяснить поэтому вот пример:1. Пользователь выбирает файл2. Вписывает данные в боксыНапримерRate.Drop.Item.Poor (по дефолту, не изменяется) = 1 (введенное значение)Rate.Drop.Item.Normal = 2Rate.Drop.Item.Uncommon = 33. Прога находит текст Rate.Drop.Item.Poor и заменяет цифру ПОСЛЕ этого текста4. После замены всех цифр напротив каждого текста пользователь сохраняет файл и закрывает прогу.Проблема в этой самой замене. После текста стоит несколько пробелов, каждый раз разное количество. Нужно как то пропустить эти пробелы со знаком равно и исправить только цифру. Напрямую через text.replace разумеется не получится. Я думаю что это как то решается через regex, но как именно?Простите за неровный почерк.
Анон, с какой либой/фреймворком можно повозиться для практики, чтобы нескучно было?
>>803548Разобрался. Стояло свойство SizeToContent="WidthAndHeight". Забавно то, что в один момент я оборачивал датагрид в DockPanel и, если руками ресайзил форму, то ее не пидорасило. 2016й на дворе, а у нас все еще нет вменяемого UI фреймворка для десктопов.
>>805422можно, если через регексп, применить группы>>805499aForge.NET, MathDotNet
>>805499Unity3d
>>805518 >>805562Годно, но ни в матешу, ни в 3D не могу.
>>804559>Мужики, можете в след. тредах чето по ASP.core в шапку забросить годное?Забрось.Расскажи как вообще вкатиться в ASP.NET
>>805590Тогда ASP.NET MVC, если хочешь куда-то вкатиться и что-то зарабатывать. А если хочешь кодить в свой досуг "для души", то кто ж тебя знает, что у тебя на душе.Кстати, в Unity можно делать и 2D игры. И это не единственный игровой движок/фреймворк, использующий шарп, есть еще как минимум Monogame и Xenko, правда, они в сумме не имеют 0,1% популярности Юнити, но зато опенсорсные, швятая швабода же.>>805631Берёшь и вкатываешься. Ну реально, это ж самое востребованное направление разработки на C#, если в одну компанию не возьмут - иди в другую, если один туториал не понравится - изучай другой. Выбор большой. Или есть конкретные вопросы?
>>805663Общие вопросы - я долго крестоблядствовал, но теперь хочу СИСЯРП. Порылся по HH, пришел к выводу что почти везде нужен ASP.NET, часто с MVC. Всё правильно понял? (А где нет ASP - там нужен Xamarin и/или Unity, да?)Конкретные вопросы:Сколько времени нужно на вкатывание? (.NET не совсем чужд, баловался иногда, в MSIL код повтыкать если что - не побоюсь)Можно ли сразу смотреть ASP.NET 5 или он ещё мало где?Какой туториал посоветуешь?На какую вилку рассчитывать (ДС2)?
>>805667> На какую вилку Ту, котрой чистят нужники
>>805667>везде нужен ASP.NET, часто с MVCНе везде, но самое распространённое. Для новых проектов - только MVC, для легаси - нередко ASP.NET WebForms.>(А где нет ASP - там нужен Xamarin и/или Unity, да?)Да. Особенно Unity.Есть ещё вымирающая ниша десктопных приложений, но полностью она не вымрет никогда.>Сколько времени нужно на вкатывание? (.NET не совсем чужд, баловался иногда, в MSIL код повтыкать если что - не побоюсь)Смотря кем. Джуниором так наверное прямо сейчас, судя по тому, как ты себя описываешь, но захочешь ли ты? Вообще я думаю, что с твоим опытом ты можешь хотя бы примерно представлять, что требуется от разработчика (не именно C#, а вообще) и сколько времени нужно, чтобы это изучить. Думаю, в C# примерно также, только порог вхождения ниже.>в MSIL код повтыкать если что - не побоюсьЭто от среднего кодера и не требуется.>Можно ли сразу смотреть ASP.NET 5 или он ещё мало где?Он же вроде переименовал в ASP.NET Core. И да, он мало где, но изучать можно уже сейчас.>Какой туториал посоветуешь?Именно по ASP.NET?
>>805678>Смотря кем. Джуниором так наверное прямо сейчас, судя по тому, как ты себя описываешь, но захочешь ли ты?А таки что мне еще остаётся? (Это риторический вопрос - выже джуна я прямо вот сразу пока не готов. Но побыть джуном - почему бы и нет?)>Это от среднего кодера и не требуется.Часто бывало интересно посмотреть как что работает (в плюсах тоже)>И да, он мало где, но изучать можно уже сейчас.Я к тому чтобы не получилось, что я весь такой модный а у всех Говно.Мамонта 3.0 (прости, вообще не в теме пока что)>Именно по ASP.NET?Да, по нему и по MVC. Шарп сам по себе я и сам вспомню.>>805669> > На какую вилку >Ту, котрой чистят нужники Что ты злой такой? Все когда то были джунами, но не задарма же.
О, подкиньте интересную идейку проекта на асп
>>805690рсс агегатор, соц сеточка типа инстаграма,твиттер,фейсук,cms своя.да даже копия двача.просто берешь то, что тебе нравится и пытаешься повторить.Хотя бы базу.
>>805101БАМП
на c# есть фриланс или удаленка? Сори за такой тупой вопрос, просто я питоно-пидор, и стало интересно.
>>805915Конечно есть
>>805947то есть я вполне реально могу из своей мухосрани работать за еду на этом вашем с#?
>>805948Ну если повезет, то да
Посоны, как быстро и красиво написать такое.Создать текстовый файл в той же директории, где и исполняемый файл приложения, если файл с таким именем уже существует, то заменить в нем весь текст новым текстом(удалить весь текст и записать по-новому).
>>805973Это легко ищется в гуголе
Не имею корочки ботана технаря, но хочу пойти на работу в сисярп, для начала за еду. Хочу сделать какой нибудь резюме проектик что бы показать что я умею, че бля можно сделать такого что бы не обосраться?
>>805973[code]using (System.IO.StreamReader SR = new StreamReader(new FileStream(directorystring,...,FileMode.Create),Encoding.GetEncoding(1251)){while(yourCondition)\tSR.WriteLine(yourstring);}[/code]
Сап, сишарпач, пилю небольшой бложик на asp.net core и тут у меня возник вопрос, есть куча вью-моделей в которых есть одинаковые поля уровня Id, Name и т.д., если я создам 1 абстрактный базовый класс и буду от него наследовать в другие вью-модели, будет ли корректно это работать с седьмым ef'ом? Или забить на наследование и оставить дубликаты как есть? В первом варианте по идее контекст будет держать что - то уровня : public DbSet<MyBaseAbstractClassViewModel> Model;во втором появляется куча объявлений уровня public DbSet<TagViewModel> Tags;public DbSet<PostViewModel> Post;
>>806072Ты viewmodel's сохраняешь в базу? Кто тебя этому научил?
>>806078Никто, сижу вот разбираюсь, хочу как пет-проект блог написать, а как надо-то?
>>806078Через отдельную дата-модель?
>>805684Для джуна, наверное, достаточно знать сам язык C#, общие принципы веб-разработки и изучить ASP.NET MVC.>Да, по нему и по MVC. Шарп сам по себе я и сам вспомню.Вот устаревший на 3 года туториал: https://habrahabr.ru/post/175999/. Но даёт хорошее представление о том, как в принципе устроен фреймворк.
>>805948Да, но это не так просто. 50% заказов для фрилансеров, хоть как-то связанных с программированием, - это сайтики на вордпрессе. Ещё 25 % приходится на другие виды пхп-говна. И 25 % на прочие языки, из них может 3 или 5 % .NET.
>>805667>Какой туториал посоветуешь?Туториалы на все случаи жизни, в т. ч. по ASP.NET, есть на http://www.w3schools.com/ и http://www.tutorialspoint.comНо они какие-то поверхностные.
Товарищи, есть вопрос. Хочу сделать клиент для сбора статы по говногейм. Отправляю реквест, получаю в ответ json, библиотекой пытаюсь разобрать json на класс(ибо в инфо библиотеки говорится, что так правильно), однако разобрать возможно только в случае совпадения названия класса, а название класса меняется в зависимости от ника, как реализовывать?
>>806499>название класса меняется в зависимости от никаКак это?
>>806525Ответы json. {"lol": { "id": 155767, "name": "L O L", "profileIconId": 7, "revisionDate": 1443795620000, "summonerLevel": 30}}{"rofl": { "id": 56834539, "name": "ROFL", "profileIconId": 784, "revisionDate": 1469541932000, "summonerLevel": 30}}Запрос на два аккаунта, собсвенно, что бы разобрать по любому нужен класс под json, в котором меняется имя под класс. Может я не с той стороны лезу?
Вопрос исторического характера.Когда слышишь о предшественниках C#, из которых он заимствовал концепции, обычно слышишь о Java, C++ и Delphi.С первым случаем всё понятно, со вторым более-менее, а насчёт третьего - что такого специфического (чего нет в Java или C++) создатели C# взяли у Делфи? Насколько я помню, там даже полноценного сборщика мусора нет.
>>806541Хейлсберга с# взаимствовал.
>>806534Это Dictionary<string, Yoba>
Начал учить асинки. Есть метод, который добавляет обьект в контекст.public async Task AddYoba(Yoba yobik) { db.Yobas.Add(yobik); await db.SaveChangesAsync(); }Когда я вызываю его дальше в кодеawait db.AddYoba(someYoba);Он крашится сетуя на налл. Без авейта(синхронно) работает нормально. В чем проблем?
>>806582Проебался в остальном коде (
>>806044А не надо делать SR.close()?
>>806634по выходу из блока оператора using у созданных в скобках оператора потоках/любых других классов, реализующих IDisposable, вызывается .Dispose(), что вроде как включает в себя .Close()
>>802817Ребят, хелп плиз.
Нюфаня в треде. Из программирования освоил только HTML(не смейтесь). Есть 2 вопроса:1) По шкале от 1 до 10, на сколько сложен C# для изучения с нуля?2) Смогу ли я кодить примитивные проги в Unity? Просто я на нём как-то пилил 2D поатыормеры, и мне понравился drag-and-drop интерфейс.
>>806671Не ссы, 0/10. Я за 2 месяца ОЧЕНЬ ленивого обучения (3-4 часа в неделю) написал пару хеллоуворлдов с использованием БД, парсер для авито на WinForms и раннер на юнити. Десктоп проги делай в VisualStudio, там тот же драгндроп только ещё удобней.
Альзо, есть желающие потестить мой хеллоуворлд нотифер для новых объявлений с авиты? http://rgho.st/7dX7XcDSQ
>>806673Спасибо. И ещё, у меня МакБук. Стоит ли мне тогда дрочить Swift? Или лучше сразу учить актуальный язык? VisualStudio есть на мак? пикрандом
>>806676Смотря зачем ты учишь язык. Есть CODE для мак. А вообще погромированние часто путают со знанием языка, а это совсем разные навыки.
>>806674Щас бы в 2016 использовать обменники для сорсов.
>>806683Так ты у меня спиздишь всё и продашь за лям.
>>806687MIT лицензию не забудь, а то ж еще делится придется.
>>796165 (OP)Господа, самостоятельно копошусь на первых этапах связок с БД. Возник вопрос, как можно вместо уебищного аксессоподобного датагридвью делать простые таблички для вывода на форму?
>>806708на формах это норма. А что с ним не так, бро?
>>806687>декомпиляция>реверс-инженеерингнет, не слышал
>>806853>аутофелляция>инженер-риммингзато ты, ебать, слышал и спешишь об этом всех оповестить, малолетний ты долбоёб.
Сап. У меня есть приложение автотестов. В тестах мне понадобилось залазить в почту гугловскую чтобы проверять полученное в ходе выполнения теста письмо. Дело в том, что автотест всегда выполняется на пересозданной виртуалке, поэтому каждый раз нужно проходить двухфакторную аутентификацию, а автотест не имеет доступа к этому окну. Есть ли какой-то способ получить доступ к ящику только по креденшелам?
Как определить существет инстанс локального sql сервера или нет? Известно только имя сервера.
>>8068741) зачем там включена двухвакторная авторизация?2) зачем ты используешь гугл?
>>8068791. А разве она как-то выключается? Я уже сотни всяких мануалов посмотрел, кругом оно юзается (т.е. окошко с пермисиями нужно кликнуть, перед тем как апи заработает).2. Ну так вроде самый распространенный почтовик. Что, если не его?
>>806882>Что, если не его?1) поставить тестовый сервак с почтой2) yandex/yahoo/mail.ru/.../милион других почтовиков3) лично я для тестов юзаю https://www.guerrillamail.com/GuerrillaMailAPI.html
>>806892Спасибо.
>>806708Ado .net
>>806876бумп
>>806874у гугела раньше были так называемые пароли приложений. т.е. в ящик с браузера зайти было по нему нельзя, ток используя соответствующие ендпоинты. как с этим сейчас - не знаю
>>806676Visual Studio нет.Есть MonoDevelop, Xamarin Studio (по идее, её можно использовать не только для создания Xamarin-приложений, кажется, она форк MonoDevelop или что-то в этом роде) и вскоре будет Rider (я так понимаю, платный).
Нафаня итт.Нашел я на сайте CyberBionic Systematics(ITVDN) такую хуёвину пик, на которой сказано что если вы захотите вкатываться во фронтэнд, то нужно обязательно пройти первую ветвь .net. Так-ли это? Или она нужна только для бекэнда и тд? Хотя на том же сайте я нашел 2 пик, на котором в предварительных требованиях не указано обязательно знание 1 ветви.Или я что то не понимаю?
>>807034Блять, не туда написал.
>>807034не нужно проходить.
>>807030Ты забыл про VisualStudio Code.Он тоже поддерживает рефакторинг и отладку, при этом жрет (VSC+OmniSharp) чуть больше 100MB оперативы и запускается за секунду.
>>806550И всё?
>>806865так блин, оно ж работает.мимо другой кун
>>806372Не вздумай читать ето говноАвтор туториала так топорно пишет, что желание отпадает читать дальше на втором уроке.Лучше унылого хохла с ITVDN послушай.
>>807055я с этого туториала вообще вскочил в аспнети, кстати, сей автор тоже хахел. не знаю, зачем тебе эта информация
>>807068>сей автор тоже хахелЕщё и из Тернополя. Каждый день русских младенцев ест.
Анончик,Раз уж тред про .NET, добавь пожалуйста годных учебников по VB.Спасибо.
>>807071вроде из черкасс, не?
>>807083Ошибся, Ивано-Франковск (но это примерно то же что и Тернополь). Это если мы об одном и том же авторе говорим, я лично о хабровском туториале по ASP.NET MVC: https://habrahabr.ru/users/chernikov/
>>807079Одумайся, не учи vb
>>807079>>807110Вопрос к обоим - а какие могут быть причины учить и причины не учить VB.NET?
Где можно глянуть сей курсhttp://metanit.com/videocourses.phpИнтресно за шо хотят 55 бачей, статейки вроде годные
>>807079> VBГде-то слышал в этом году фразу с которой ржал весь зал "ВП используют только мазохисты и джавафанатики"
>>807124>>807110Причина простая - нет особого выбора. В последнее время много работаю с excell'ем, в котором искаропки отсутствует нужная мне функциональность. Сам я учусь по "C# players guide", но возможности писать напрямую C#-код там нет.Искал трансляторы кода, почти все они говно, а те что не говно - все равно надо в коде хорошо разбираться.Мало того, в этом excell'е используется дремучий VBA, но если уж вступать в это говно, то пусть уж будет .NET.Вот и все.
>>807190с мм офисом из .нет приложений можно работать через InteropServices.MicrosoftOffice.%AppName%
>>806876Бамп.
>>807223сделать запрос к нему, используя простейший адо.нет
>>807223Что значит инстанс? Какого объекта?
>>807224Для этого надо знать логин\пароль к БД, а их пока нет. Нужно определить существование сервера.>>807225Это не объект, а экземпляр сервара - терминология SQL.
>>807226ну логика как бы подсказывает, что без наличия доступа к серверу, нехрен туда лезть. по крайней мере, именно таким бы образом я бы и выстраивал
>>807229Обнаружение доступных серверов никто не отменял.
>>807226Пингани хост и все тогда.
>>797314Попробуй в своем AJAX запросе указать что ждешь в ответ JSON ( dataType: "json")
>>807251Не пингуется, tcp же не всегда может быть включен? Если имя сервера SRVNAME какой хост прописывать?
>>807258Если локальная установка то localhost:port.
>>807264А она гарантированно отработает вне зависимости от настроек файрвола компа? Надо что бы у клиентов на любом компе это сработало.А если порт будет не дефолтный?
>>807270sql студейка то не всегда находит, а ты хочешь. Если фаервол блокирует - ты ничем не подключишься, если порт другой - никто не найдет, можешь только все порты на всех устройствах посканить, а если сервер только локалхост слушает, а если named pipes, а если... Выбери себе только нужные варианты, а не всю вселенную.
>>807282И да, плюсую тот совет про скл запрос, если инстанса просто нет - будет одна ошибка, если есть, но логин/пароль не подходят - другая, если подходят - безопасность протекла.
>>807282Похоже этот подход через пинг геморный и не 100% рабочий. Решил открывать подключение с левым именем, если напишет что логин не подошел это значит по любому сервер уже нашелся.
>>807287Угу, похоже то что надо.Всем спасибо!
>>807270Как вариант получать список процессов, искать скуль и по айди в списке активных тцп получать слушаемый порт. А так если установка нестандартная то больше никак.
Посмотрите что за пиздец на MSDN.https://msdn.microsoft.com/ru-ru/library/cc221403(v=vs.95).aspx>эти скобки
В WPF кто нибудь пользовался wpf toolkit от xceed, в частности их DataGridControl из community version? Есть ли возможность такого же кастомайза их DataGrid'a, как и родного от майкрософта? И еще, ни у кого случайно нету ссылки на источник подробного гайда по кастомайзу родного DataGrid в WPF?
Привет, /пр.У меня есть нулевой опыт в программировании, некоторый пассивный доход с продуктов компьютерной графики, кириллистическая мечта и бесконечность свободного времени.Собственно, есть пару вопросов которые серьёзнее, чем может показаться из-за манеры изложения.Хочу зделоть свой гениальный онлайн-шутер от первого лица, суть такова: графон на уровне тим-фортесс говна и веток, не высокое требование к железу, чтобы сервера были как в контер-страйках и конченный пользователь мог в джва клика скачать и захостить свой сервер.После пары статей и видео на ютубе на общею тематику про деланье игор и поверхностные обзоры скриптовых языков, решил изучить Си шарп и Юнити для реализации того, что описал выше. Всё правильно сделал? Какие подводные камни?
>>807482>Какие подводные камни?Никаких, миллионы онлаен шутеров и полный стим говна не могут ошибаться. Плыви с миром.
>>807505ДвачуюС учетом того что в стим попадает и покупается всякое говно уровня видеолейтед, без покупателей ты наверняка не останешься.https://www.youtube.com/watch?v=yA2dSTG-jbw
>>807479В каком смысле кастомайза? Можно хоть весь template переписать, хуль тебе еще нужно?
>>807649Ёбаный двач не работает. Отказывается отправлять длинные сообщения.Пикрелейтед.
>>807656ваша задумка - калище, мсьё
>>807453Объзмеился слегка :3
>>807685ВЫ МНЕ ПРОСТО ЗАВИДУЕТЕ!ВЫ ВСЕ МНЕ ПРОСТО ЗАВИДУЕТЕ!
>>807656Ну это что-то из разряда "кипи випку"
>>807656Полехчи паринь, я уже спиздил твою идею. Релиз на следующей неделе.Хотя идея мне не нра, нет изначального повода донатить и корная тусовка может не собраться. А без нее игорь умрет, тихие сервера без нищебродов, но с визгливыми школьниками-мажорчиками будут как никогда тихими.
>>807453Это чтобы потом внутрь скобок можно было добавить ||, а снаружи – &&.
>>807453в форе действительно найс так писать
>>807183А джавафанатики почему?>>807190VBA и VB.NET - это разные языки, я не уверен, что изучение одного поможет в изучении другого. Точнее нет - поможет (уж синтаксис-то точно должен быть похожий), но всё равно придёться знать именно VBA.
>>807183Вообще смешно, что такую репутацию имеет мощный современный язык, в котором есть полноценное ООП, полноценные generics, лямбды, LINQ, Async/Await и много чего ещё, в т. ч. то, о чём джависты могут только мечтать.
>>807949ну VB с трудом можно назвать современным
Вчера в книжном парень подошел спросил с чего начать в шарпе можно, пришлось рассказать ему о преимуществах хаскеля. Ну а хули он.
>>807860в if-е тоже?
Всё правильно сделал? Сколько времени примерно займет?
Посоны я нихуя не пойму. Вот пример кода : http://pastebin.com/qQ2CT2RQВ общем когда запускаю цикл вместе с Thread.Sleep из этого примера https://msdn.microsoft.com/en-us/library/cc221403(v=vs.95).aspxВсе нормально работает ничего не подвисает, в лейбл все выводится проценты и спокойно могу работать с программой, пока фоново там что-то делается. А вот запускаю код по ссылке в начале где server.Connect весь интерфейс нахуй зависает нельзя ничего сделать и в конце когда уже соединился с сервером, выдает "DONE" и все отвисает, я нихуя не пойму, я же вынес его в отдельный поток, почему он подвешивает основной?
>>808189Неделю-две, потом дропнешь.
>>808189Я себе так купил книжку про питон на 2к+ страниц, лежит теперь где-то за шкафом с коричневыми страницами.
>>808189Лол, нахуя ты их купил? Можно же было просто скачать. Ты не русский что ли?
>>796165 (OP)Господа, посоветуйте годной литературы по WPF MVVM. Ну пожалуйста.
>>808209А я SICP себе взял с ozon, так и не открыл (не ожидал что она такая толстая будет).
>>808189Пару лет, минимум.
>>808195бля я даун.
Анисовки, как лучше разрулить этот момент? Есть набор проксей, из них явно дохуя нерабочих. Чекаю их запросом к определённому url, приходит Json. Как я могу прикрутить к этому асинхронность?Сейчас работает очень грустно, тк если сервер молчит, то поток виснет на 10-15 секунд.[code] _webRequest = (HttpWebRequest)WebRequest.Create(url); WebProxy myproxy = new WebProxy(proxy.ToString()) {BypassProxyOnLocal = false}; _webRequest.Proxy = myproxy; _webRequest.Method = "GET"; try { HttpWebResponse response = (HttpWebResponse)_webRequest.GetResponse(); _logger.Items.Add($"Work! {proxy.ToString()}"); } catch (Exception e) { _logger.Items.Add($"{e.Message} with {proxy.ToString()}"); return false; }[/code]И на пасте.http://pastebin.com/F7YntniYя ещё нюфаня если чё
>>808222webrequest - уже устарел.Есть ли у тебя возможнасть использовать httpClient?Если есть - то делай через него.Там уже есть обычный асинхронные методы, а не говно с beginInvoke/endinvoke
>>808227Есть, спасибо, буду делать через него
>>808228ну только учти, что в тот момент когда ты завалишь асинхронность ее много где по прилаге придётся протаскивать.Плохого в этом ничего нету. но важно не забыть.
>>808215грят, мнение "специалиста" с рутрекера про wpf лучше читать "MacDonald M. - Pro WPF 4.5 in C#. Windows Presentation Foundation in .NET 4.5 (The Experts Voice in .NET) - 2012", но мне не особо помог, хотя я не интересовался детально MVVM и прочими глубокими теоретическими знаниями (хотя там есть инфа и про mvvm, DI и прочее), меня больше интересовали некоторые контролы и основы стайлинга и шаблонов, дак вот, в книгах нихуя такого нету, где приводились бы реально сложные и интересные шаблоны/стили. я пришёл к выводу, что все эти книги лично для меня бесполезны, и объясняют там элементарнейшие основы, которые проще и быстрее загуглить.
Как же мне горит от этого ебаного Зимарина. Там ошибка, там пакет не встает, включи хайпер ви для мертвого виндофона, а андроид уже не запускается и наоборот, про ебаном с яблока я вообще молчу. Зачем эту сырую парашу продвигают
>>808747а вот и битордик со смишными картиночками и анализом по пасте подъехал не задерживайся проходи под шконарь -> >>806369 (OP)завтра параши (>>802533 (OP) >>804519 (OP) >>806729 (OP) >>796165 (OP)) пойдёшь чистить
Есть какие-нибудь свежие тестовые задания на Джуна C#? Читаю, делаю маленькие задания, но ближе к делу хотелось бы что-то.
>>809004Implement, please, web aplication:On a main page must placed 2 input box, and submit buttonIn one input will enter the command that needs to be run. For example: "git log"In the second path to the folder where you have to run the commandOn button click execute commnadAfter command will execute you must show command output and spend timeThe advantage is:Implement logImplement the ability to interrupt commandНо я апплаился не на джуна
>>809004Вот еще, кстати, несложноеhttps://docs.google.com/document/d/1qCKy3tWEe9O7XlCi_HO5lxT-J1JhCw9EnWDCDikys8w/mobilebasic
>>809030Кто такую хуиту вообще проектирует?В один массив -> Подставить minDate в начало и maxDate в конец -> Можно добавить if на удаление даты, если она повторяет minDate/maxDate (Следственно, не добавляем minDate/maxDate) -> сформировать обратно ебанутую кострукцию двумерного массиваМеня возьмут на работу?
Анон, есть MediaElement и различные объекты с анимацией в лице других Storyboard. Можно ли как-нибудь устроить merge для них или сделать привязку к головному Storyboard? А то переделывать Storyboard в коллекцию Animation, а затем добавление в головной Storyboard не хочется. + Управление уникальными Storyboard проще.Еще проще. Мне нужно сделать привязку по времени многих элементов со своей анимацией (разница лишь в длительности анимации) к MediaElement со своим Timelin'ом в виде видео. Карач, единый старт для всей анимации с минимальными потерями.
>>809066вообще не понял твоей мысли, но, учитывая их собес, и тебя возьмут
>>809027Не смог прочитать :(
>>8090721. Преобразовываешь двумерный массив в List<DateTime>, при помощи LINQ2. Insert minDate и maxDate по концам3. Формируешь двумерный массив обратно4. returnЭто должно быть быстрее, чем перебор, поэтому это решение должно их удовлетворять. Но я бы сделал проверку крайних элементов на эквивалентность minDate и maxDate, чтобы не было пары из { minDate, minDate };Помогите с вопросом >>809068
>>808019Почему же это?
>>807183>ВПВижуал Пейсик?
Подскажите, как правильно сделать авторизацию на клиентском приложении на .aspx сайте через webclient. Суть задачи: надо авторизоваться на сайте и скачать файлик по uri в клиентском приложении. Клиент вводит свой логин пароль сам. Приложение к сайту прямого отношения не имеет, поэтому все вынужден делать на стороне клиента.
>>809121вб такой же древний, как, к примеру, делфи. если бы то дотнет не ставил за цель интеграцию всех совместимых языков под крышей одного рантайма, то бейсик остался и дальше архаичным говном для макросов мс ворд (я знаю, что вба != вб) и преложэний заводских программистишек
>>809413>вбаВсм? vb.net?
>>809413VB и VB.NET имеют примерно столько же общего, сколько C++ и C#.>>809445>ВсмЧто это?
Есть ли какие-нибудь интерактивные курсики по типу платформы stepic по си шарпу? Просто дело в том, что я могу обучаться только с клоунами, которые прыгают вокруг меня, а с книгами это весьма проблематично...
>>809464> примерно столько же общегот.е. немало>>809445Visual Basic for Applicationsты из села что ли?
>>809510>т.е. немалоТ. е. в основном только синтаксис.
>>809464>Что это?В смысле?
>>809305Ну бамп жи
Анон, я тут учу сисярпы уже целую неделю, и не могу понять нахуй нужны конструкции типа {get; set;}.Они что, типа ограничивают поля на чтение и запись? Если только get, то мы можем читать данные из поля, но повлиять ни на что не сможем? И set - это изменять их?Как вообще это можно сформулировать на человеческом языке? Алсо, в каких случаях следует юзать get-set фичи?
>>809758просто нахуй иди это не твоё, пиздец даун
>>809797>ответ уровня даже не /pr/, а /b/
>>809758На заре инкапсуляции посоны сказали что поля не должны выпирать наружу, обращайтесь к ним только через методы getYoba() и setYoba(Yoba yoba). Ну и все согласились. Потом мама-курочка говорит папе-курочке: чет я забался бойлерплейт писать)), давай накинем сахарку! И накинули. Теперь это уже Yoba {get;set;}. А цыплятки потом: да вы охуели там штоле блядь, как теперь readonly property то делать? РУКАМИ? Так оно стало Yoba {get;}>в каких случаях следует юзать get-set фичиВо всех!
>>809815На такие долбоебские вопросы по-другому не овтетишь.
>>809758На практике - я чаще всего использую auto properties для того, чтобы разграничить доступ на запись и на чтение.Напримерpublic double CockLength { get; private set; }Если и get, и set имеют один модификатор доступа, то смысла использовать их вместо обычных полей, на мой взгляд, нет. Хотя если совсем угореть по ООП, то по идее все поля должны быть приватными, а всё публичное - properties.А вообще что такое properties ты читал? Если нет, то сначала разберись, что это вообще такое.Вот гайд, когда использовать properties: https://msdn.microsoft.com/en-us/library/ms229054(v=vs.100).aspx (но он касается не auto properties, а обычных).
>>809830>А цыплятки потом: да вы охуели там штоле блядь, как теперь readonly property то делать? РУКАМИ? Так оно стало Yoba {get;}А его можно задать в конструкторе, кстати?
>>809838Da
>>809839А нигде, кроме конструктора, задать нельзя?То есть оно полностью идентично readonly полям?
Можно при инициализации Yoba {get;} = new Yoba();
>>809834У тебя поля публчные что ли?
>>809844Только в шестом
>>809846Завтра 1 августа 2016
>>809851Завтра 2 августа
>>809853Тем более!
>>809854Ну хуй знает, я общаюсь со своими знакомыми из разных компаний, и пока еще нигде на шестом не пишут.
>>809845Большинство - разумеется нет.Но я реально не вижу причин использовать проперти, если и геттер, и сеттер публичные и не используют никаких проверок. Если что, переделать поле в проперти можно в любой момент.
>>809856У них там 3.5 фреймворк то штоле?
>>809856в предыдущей конторе перешли на 6 чуть менее года назад>>809857ну, логика get/set всегда может измениться без последствий. но, например, как параметр ref/out проперти уже не заюзаешь (пример так себе канеш)
>>809857>переделать поле в проперти можно в любой моментЧерез тред такая фраза встречается, каждый раз советуют вспомнить, что от когда от твоего кода зависят другие библиотечки и ты поменял поле на свойство - то их придется перекомпилить, если ты просто поменял логику в геттере/сеттере - не придется.
>>809867Ни разу не писал такой код, надо будет учесть, если что.
Анончики, нужно написать программу, используя WinForms, суть такова:Есть 4 drop-down ComboBox списка, каждый зависит от предыдущего. Например - планета, страна, город, улица.Программа должна иметь следующие возможности:1. При выборе планета => страна => город => улица показывать кол-во домов.2. Возможность изменить/добавить/удалить запись.Все возможные варианты с соответсвующим количеством домов записаны в CSV файл, каждая строка - отдельный вариант: {планета,страна,город,улица : кол-во домов}.Как это вообще реализуется?Да, забыл добавить, все что я нагуглил использует DataBinding и SQL, что логично, но я учусь по "C# Player's Guide", и до этого еще не дошел.Что лучше всего использовать? Список массивов? Dictionary?Выручай пожалуйста.
>>809978> Список массивовТы c# вообще? Список твоих моделей конечно же. Ты либо сам парсишь csv, либо да, ты же учишься. Ну а потом ехал linq через linq.
>>810000>Список твоих моделейИзвини, не понял. Объектов? На каждый вариант - создавать объект?
>>810002Да, это будет объектное представление твоего списочка в csv
>>809856я с тобой не знаком, но пишу на 6.задавай ответы.
>>802817В треде ни одно блять програмиста штоле?Алё, аноны.
>>810106Так это девопсовская задача, иди нахуй.
>>810109анон, если у тебя на работе есть девопс - ты щастлив. Но вашпето пограмист должен наверное такое знать, не?
>>809978ну распарсит csv в классики - это не сложная задачка.Остальное гуглится по запросу "winforms cascading combobox" если я тебя правильно понял
>>808674Пишу на замарине полтора года. Брат жив.Задавай ответы свои.
>>810111> долженну хз. хорошо, когда ты знаешь и умеешь больше. плохо, когда тебя заставляют выполнять несвойственную должности работу
>>810117got it.Ну мне просто казалось что наверное ктото ещё с таким сталкивался.Лады. Сам разберусь.
>>809497codehunt.comcodewars.com
>>810115Почему эта хуйня такая глючная, даже хелловорд не запускается без 100500 ерроров? Интересно, Майкрософт хотя бы сделает из неё что то удобоваримое, а то пиздц же.
Почсните за конструкции типа "#if SOME_VAR".Что это и откуда оно берет значение этой переменной?
>>810228читай про директивы препроцессора и условную компиляцию
>>810214Глючная была год назад. Уже сейчас достаточно стабильная.Юзаю формс на вижле 2015 комьюнити.Пишу под иос и дроид. Есть конечно нюансы, но не так, чтобы совсем уж всё плохо.
нужна современная книжечка по современному с# с задачками внутри. что посоветуете?
>>810252читай троелсена / рихтера, а потом напиши своё пет проект.
>>810280а что про Хейлсберга скажешь? я полистал немного, на первый взгляд мне понравилось.
>>810299ничего не могу сказать, анон.Я читал сначала троелсена, потом рихтера.Этого предостаточно для того, чтобы понять как что работает. Последнего перечитываю иногда (всмысле избранные главы).Если товарищ Хйлсберг годный перец, а он годный, ведь именно он и создавал с#, то смело можешь читать его.Хз правда, на каком уровне его книги. Ну то есть насколько глубоко он поясняет.
Двач, предлагают работу с devExpress на Asp.Net MVC. Это перспективная хуйня или типа шаропоинта ебалень?
>>810344так и не понял, зачем люди используют девекспресс(в коммерческой разработке с ним не сталкивался)
>>810344будешь долбиться в жопу. Девэкспрес хорошо только на самплах. как только ты захочешь что-то кастоймазить (а тебе неприменно блять это понадобится) - ты проиграл.Сам юзал эту хуйню на впф и на мвс. Знаю о чем речь идёт.
>>810348ну типа готовые контролы. Меньше тратишь время на разработку UI.
>>810356я знаю, что такое девекспресс, я не знаю> зачем люди используют его
>>810358>Меньше тратишь время на разработку UI.Я ж вроде пояснил. По идее дешевле купить обосрацца грид/ворд контрол/ещё чтото чем делать с нуля.Вот и выгода тебе
>>810361учитывая, сколько оно все стоит, я не думаю. хотя хер знаетв любом случае, если нужна прям такая кастомизация, проще перейти на впф
>>810377Не, чувак. Бывает необходимость пилить репорты на вебе, или делать охуительные гриды с деревьями и т.д. Короче, похуй почему. Просто все эти контролы - говно. Они хорошо только в базвовой комплектации. Главное к ним ничего не прикручивать.
>>810344Почему Шарепоинт не перспективен?
Мне надо поискать запрос в гугле и считать ссылки на первые несколько результатов. Поискал решение, охуел от сложности. Можно как-то попроще сделать это? Мне не нужно блять свою поисковую систему создавать, как предлагает гугол.Вот тут http://stackoverflow.com/questions/18389714/search-keywords-in-google-through-c-sharp-window-application самый нижний ответ норм, но там он юзает API, где мне его скачать-то? К удивлению нихуя найти не смог
>>808674А зачем что-то писать под виндофон?
>>810557Еще нашел вот это https://github.com/google/google-api-dotnet-client, что это вообще за хуйня, что с ней делать и как использовать в программе?
>>810557На удивление, искать в интернете ты вообще не умеешьhttps://developers.google.com/api-client-library/dotnet/apis/customsearch/v1> Install a NuGet package from those available at Google.Apis.customsearch.
>>810594На удивление, читать ты вообще не умеешь>Можно как-то попроще сделать это? Мне не нужно блять свою поисковую систему создавать, как предлагает гугол.
>>810596ты поехал, какую поисковую систему?> var client = new GwebSearchClient("http://www.google.com");> var results = client.Search("google api for .NET", 100);это все, что тебе надо, только вместо ста - int.max или допустимое для апи значение
>>810517потому что его юзают только конченные извращенцы
>>810601Да я поехал, потому что блять хуйня, на которую я планировал потратить 5 минут, превратилась в занозу в жопе.Ну установил я через эту ебаную консольку кастомсёрч. Пишу:>using Google.Apis;про твой код он вообще ничего не знает, подчеркивает.Пишу как нашел в интронете:>string apiKey = "ключ";>Google.Apis.Customsearch.v1.CustomsearchService svc = new Google.Apis.Customsearch.v1.CustomsearchService();>svc.Key = apiKey;Подчеркивает svc.Key мол не знает о таком.И куда мне ключ писать тогда? Просто пиздос
Просто скажите, что надо еще скачать и подключить, чтобы он увидел GwebSearchClient. инбифо мозги
>>810112>>810000Так, так, спасибо, направление я понял. И очень рад, что дошел до этого сам, я не безнадежен!Значит так, поправь меня если не так:1. Каждая строка в CSV формируется в объект, поля которого - ряды в этой строке.2. Этот объект добавляется в список объектов.3. С помощью LINQ можно уже извращаться с объектами.Можно пожалуйста ссылку на похожий код для изучения?Спасибо.
>>810691в get started для этого api есть пример. ты его пробовал использовать?
здравствуйте, отцы.пытаюсь въехать в wpf после пару годов winforms.пока что не особо успешно. разобрался с контейнерами, хамл как записывать.сейчас мне нужно сделать вот что.у меня естьрадиобатон, и я хочу, чтобы когдя я его кликнул, то у пары текстбоксов enabled было равно радиобатон.чекед.как мне это сделать?
>>810811Нет нет нет, пиши сам.>>810944Bindings to the rescue!Можешь сразу забиндить свойства текстбоксов на радиобаттон или почитать mvvm и забиндить свойства контролов на свойство viewmodel
>>810944<RadioButton Name="rbAlreadyHas" FontSize="18" GroupName="rbGroup" Checked="rbAlreadyHas_Checked"> Я уже зарегестрирован в системе</RadioButton><ComboBox Name="cbRegisteredUsers" FontSize="18" IsEnabled="{Binding Path=Checked, UpdateSourceTrigger=PropertyChanged, ElementName=rbAlreadyHas}"/>пробовал вот так, не пашет. только выключает мой комбобокс и все, все зависимости от радиобатона
>>810954то есть mvvm,вот это все сразу припиливать?начальник на работе просто в сраку ебет, чтобы быстрее кодил(
>>810959Попробуй забиндить на IsChecked, потому что биндить на event здорово, но как то выбивается из концепции.>>810960Лучше раньше чем позже. Без этого у тебя получится windows forms 2.0, и хотя концепция тебе знакома и ты все быстро напишешь, и, как следствие, не будешь выебан в сраку, это не wpf way.
Удивительно, как мы привыкли к легаси, даже тред перекатить не можем.
>>810964>IsCheckedта же хуйня.<RadioButton Name="rbAlreadyHas" FontSize="18" GroupName="rbGroup" Checked="rbAlreadyHas_Checked"> Я уже зарегестрирован в системе</RadioButton><ComboBox Name="cbRegisteredUsers" FontSize="18" IsEnabled="{Binding Path=IsChecked, ElementName=rbAlreadyHas }"/>блять, пришлось написать обработчик. винформс 2.0 блят
Сап, сишарпач, есть один вопрос: Есть несколько viewmodel's и обычных моделей, которые сохраняют в базу данных соответственно, речь про MVC, и в каждом экземпляре есть конструктор, который принимает вьюмодель и устанавливает значения соответственно, так вот, оставить конструкторы для каждой модели, или вынести все это в йоба-фабрику? Ещё я видел где-то на гитхабе что делали не через абстрактную фабрику, а через большой статический класс, который возвращал экземпляры уровня Post->PostViewModel, PostViewModel->Post, как сделать - то?
>>811001зачем модели знать что-то про вьюмодел?для конвертации из модели во вм можно использовать любую из библиотек-мапперов. для наоборот можно обойтись чем-угодно, хоть методами-расширения, вопрос в том, что и как ты используешь
>>811045Я понимаю, я про то, чтобы создать отдельную фабрику, чтобы не писать каждый раз в контроллерах что - то уровня:Mapper.Map<ModelName>(viewModel);илиvar model = new Model(viewModel);а создать одну большую фабрику, которая будет все это выполнять, напримерvar model = ModelFactory.Create(viewModel);вот вариант статической "фабрики", который я видел, я и хочу узнать как лучше.
>>810954>Нет нет нет, пиши сам.Я так и собирался, но хотелось бы сравнить с кодом того, кто действительно умеет программировать.И еще один вопрос, если можно:Когда я выбираю все объекты с определенной планетой (a => a.Planet == Mars), как составить список ну или массив всех возможных стран на этой планете? Естественно, без повторений, чтобы можно было скормить этот список стран в формочку, когда выбирается определенная планета.Гуглится только "removing duplicates using LINQ", а мне надо не убирать повторы, а изначально составлять список без повторов.Спасибо большое.
>>811166var countriesOnMars = planets.where(x=>x.Planet == mars).SelectMany(planet=>planet.countries).ToList();Ну или если у тебя один марс только:planets.First(x=>x.Planet == mars).Select(planet=>planet.countries).ToList();Если нужны только уникальные - то надо ебануть Distinct() перед ToList.А ваще - попробуй разберись сам. linq - очень важная штука в соверменном програмировании.
>>811166Анон,Я дебил, гуглил remove duplicates вместо distinct values. Вроде нашел:List<int> lst_DistinctCountry= objList .Where(o => o.Planet == "Mars) .Select(o => o.Country) .Distinct() .ToList();
>>811174молодец, анончик
>>810959если у тебя нет никакой другой логики для переключения радиобатона и вообще, почему не чекбокс? разве не логичнее его использовать?, то убирай нахуй обработчик события Checked у него, дай радиобатону имя (x:name = anything), и в комбобоксе или что ты там выключать собрался пифы:<Combobox ... IsEnabled = "{Binding ElementName = anything, Path = IsChecked ВОЗМОЖНО понадобится вот это ещё: NotifyOnSourceUpdate = True, UpdateSourceTrigger = PropertyChanged}" />
>>810965не пропусти бротанперекат https://2ch.hk/pr/res/811482.htmlсамокат https://2ch.hk/pr/res/811482.htmlандеркат https://2ch.hk/pr/res/811482.htmlбрудершафт https://2ch.hk/pr/res/811482.htmlалконафт https://2ch.hk/pr/res/811482.html
>>811477я вчера таки подпилил)вот так<RadioButton Name="rbNewUser" Grid.Row="0" Grid.ColumnSpan="3" FontSize="18" GroupName="rbGroup" >Зарегестрировать и войти как новый пользователь</RadioButton> <TextBlock Text="Фамилия" HorizontalAlignment="Center" Grid.Row="1" Grid.Column="0" FontSize="18" IsEnabled="{Binding Path=IsChecked, ElementName=rbNewUser, Mode=TwoWay }"/>
>>810115Работаешь где-то?
програмач, такая задача: надо достать из интернета строки (песни из ласт фа апи, если кому интересно). Допустим у меня 2к реквестов (песен) и мне надо получить ответ максимально быстро, и тут у меня назревают проблемы: если делать через один HttpClient, то это будет долго, так как даже если я накатаю ему много реквестов через GetStringAsync, то через одно соединение он все равно все будет делать последовательно. А еще все это надо как-то завернуть в многопоточность и организовать вытаскивание этих 2к песен (из файла) из этих потоков, чтоб потокобезопасно корочеё Итак, прошу бородачей предложить мне оптимальный вариант, ведь это не так просто, как кажется на первый взглядесли кому интересно - позже накатаю свой вариант, но не кажется мне идеальным
Сколько я должен учиться C# и что я в общих чертах должен знать чтобы устроиться джуниором? Это, вероятно, самый платиновый вопрос ваших тредов.
>>815880Нисколько. Незачем учиться. Сишарп умирает.
Котаны, есть у меня 3 контроллера, по методу в каждом из них, что ищет посты по категории/тегу/тексту, так вот, шаблон для маршрута в стартапе замапен, и все работает, но, я хочу сделать так, чтобы 3 разных маршрута возвращали одну вьюшку, например Category/Development/1 Tag/C#/1 и Search/Hello/1 всегда вызывали одно действие в определенном контроллере, модель в вьюшку передается всегда одна и та же соот., так вот, если я закину 3 метода в один контроллер и пропишу 3 аттрибута [Route()] над одним действием, будет ли это работать?И есть ли другой способ или я просто выбрал неудачную архитектуру?
>>816318>Сишарп умирает.Что видно уже по уровню активности в треде
Есть абстрактный класс A, в котором есть абстрактный метод.Есть класс B, в котором нужно перезаписать абстрактный метод класса A, но без наследования B от A. Чтобы прям в конструкторе класса B повесить код в абстрактный метод класса A. Чтобы как в джаве. Как сделать?
Есть кто-нибудь, кто уже знаком с подписями и сертификатами? Я тут приложение сделал, а оказалось, что на других комплюктерах при запуске выдается предупреждение о неизвестном издателе. Его, конечно, можно проигнорировать, но мне как-то не очень нравится, что такое происходит. Я тут уже перечитал кучу всякой хуеты, пройдя через все круги ада, в итоге после чтения тонн простынь (которые, кстати, абсолютно все посвящены очень старым версиям vs), пришел к выводу, что для нормального сертификата его вообще нужно покупать, а тестовый сертификат действителен всего несколько часов. В общем, я уже ничего не разбираю. Если кто разбирается и поможет нормально сказать, либо кинет ссыль, где все понятно описано, буду премного благодарен.
>>818751Некоторые компании раздают бесплатно разработчикам. Но да, нужно покупать.
Ньюфаго-вопрос, прошу помочь.Хочу сделать рандомную генерацию матрицы из символов. Накидал на c# её реализацию, но почему-то создается лишь из одного символа случайного вся матрица. То бишь рандомный символ выбирается один раз и заполняет всю матрицу. Как это починить? Вот мой код: http://pastebin.com/L0fiprXK
>>82475722 строку(Random randome = new Random();) перенеси в начало метода\класса.
>>824772Спасибо большое!
>>796176Пиздец, я даже эти книги сука найти не могу, ОП.