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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
568 Кб, 2048x1152
OFFICIAL .NET THREAD №27 (C#/F#/VB.NET) #766002 В конец треда | Веб
Существует множество различных платформ и языков программирования, однако среди них нет более элитного, чем C#. Это поистине язык богов, сочетающий в себе простоту использования с поистине неограниченными возможностями. Знание C# — прекрасный детектор современного, умного и успешного человека. Изучение платформы .NET безошибочно указывает на успешного в будущем человека.
ITT элита продолжает обсуждает будущее этого прекрасного и современного продукта компании Microsoft. Только в этом треде элитные разработчики ответят на самые острые вопросы индустрии.

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

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

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

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

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

5. Какую ИДЕ выбрать?
- Visual Studio ( https://www.visualstudio.com/downloads/download-visual-studio-vs ) - самый очевидный вариант для Windows. Студия распространяется в двух редакциях: бесплатная коммьюнити-версия и платный энтерпрейс эдишн. В большинстве случае будет достаточно Community-версии: она поддерживает и C#, C++, VB.NET и F#, а так же имеет возможность установки дополнений.
- MonoDevelop ( http://www.monodevelop.com/download/ ) - самый юзабельный вариант для мака и никсов.
- Visual Studio Code ( https://code.visualstudio.com/download ) - кросплатформенный полуредактор/полуIDE, есть возможность дебага под mono.
- Project Rider - кросплатформенная IDE для шарпа от JetBrains, внутри решарпер со всем фичами, снаружи - idea http://download.jetbrains.com/resharper/riderRS-146.1908.exe - для Windows, .dmg - для OS X, .tar.gz - для Linux.
- SharpDevelop - еще одна IDE для C#, отличается малым размером (около 20мб) и опциональной портабельностью, при этом имея дизайнер WinForms и WPF, а также интеграцию с FxCop, StyleCop и прочими ништяками. Если хочется что-то по быстрому набросать, а выкачивать гигабйты нет желания, то возможно SharpDevelop будет лучшим вариантом.

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

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

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

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

ПРИНИМАЮТСЯ ПРЕДЛОЖЕНИЯ ПО ШАПКЕ

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

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

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

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

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

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

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

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

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

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

18. Я не умею читать, что посмотреть?
- Programming with C# - https://www.edx.org/course/programming-c-microsoft-dev204x-0
- Beginning Game Programming with C# - https://www.coursera.org/course/gameprogramming
- C# Fundamentals: Development for Absolute Beginners - https://goo.gl/meyyxO
- Коллекция видеоуроков, по всему дотнетовскому и смежным темам (250 часов, на русском) - https://nnm-club.me/forum/viewtopic.php?t=891636
- Набор курсов по C# от O'Reilly Media (28 часов, на английском) - http://rutracker.org/forum/viewtopic.php?t=5082978
# OP #2 #766006
9. Что почитать?
- The C# Player's Guide, второе издание (RB Whitaker) - отличная книга для ньюфагов в шарпе, все расписывается довольно подробно, очень много примеров кода.
- C# 6.0 in a Nutshell (Joseph Albahari и Ben Albahari) - огромнейший справочник, over 1000 страниц, покрывает почти все области, начиная с синтаксиса и базовых типов и заканчивая интеропом и рослином
- C# 6.0 Pocket Reference (Joseph Albahari и Ben Albahari) - просто выжимка из справочника, можно всегда держать рукой
- C# 6.0 and the .NET 4.6 Framework (Andrew Troelsen) - 1600-страничный учебник по шарпу, покрывает BCL, WPF и ASP.NET, небо и даже аллаха.
- C# 6.0 Cookbook (Jay Hilyard и Stephen Teilhet) - книга в формате "проблема-решение", можно пройтись по оглавлению, найти интересные проблемы и попыпаться самому решить, а уже потом посмотреть представленное решение. Книга скорее не для ньюфагов, а для тех, кто уже знаком с шарпом.

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

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

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

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

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

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

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

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

18. Я не умею читать, что посмотреть?
- Programming with C# - https://www.edx.org/course/programming-c-microsoft-dev204x-0
- Beginning Game Programming with C# - https://www.coursera.org/course/gameprogramming
- C# Fundamentals: Development for Absolute Beginners - https://goo.gl/meyyxO
- Коллекция видеоуроков, по всему дотнетовскому и смежным темам (250 часов, на русском) - https://nnm-club.me/forum/viewtopic.php?t=891636
- Набор курсов по C# от O'Reilly Media (28 часов, на английском) - http://rutracker.org/forum/viewtopic.php?t=5082978
59 Кб, 250x250
#3 #766012
Перший
>>766520
Антон #4 #766142
Можно ли как то реализовать просмотр твича, для получения всяких плюх(типо розыгрышей там, дропов в играх), без собственно обычного браузерного просмотра видоса? То есть без лишней нагрузки на комп. Ну типо накрутки смотрящих. Куда копать подскажи.
>>766145
#5 #766145
>>766142
twitch api?
>>766177
#6 #766177
>>766145
Есть что нибудь для примера с C#? Хуячил онли винформдесктоп приложухи, для БД. Слабо представляю как это заставить работать с API.
>>766190
#7 #766190
>>766177
сорян, сам только с гугла пришел
#8 #766520
>>766012
СИ ШАРП КРАЩА МОВА ПРОГРАМУВАННЯ
#9 #766994
Решил вкатиться в тестирование. Где то читал, что стоит сразу начинать с NUnit и забыть про дефолтный мсвский UnitTesting. Так ли это ?
>>767032
#10 #767032
>>766994
а разницы-то
21 Кб, 357x400
#11 #767216
Поясните за ваш язык. Реально по сравнению с той же джавой вкатиться в программирование неофиту? В чем конкретно в основном состоит работа? Написание декстопных приложений под винду и игоры? Если начну учить язык, то смогу пролезть хоть на какую-нибудь начальную работу?
Сам в университете немного учил шарп и джаву, по работе только писал скрипты на sas и vba + t-sql
>>767219
#12 #767219
>>767216
Будешь писать корпоративные сайтики
>>767223
#13 #767223
>>767219
Может быть я чего-то не понимаю, но почему корпоративные сайтики пишутся на C#? Чтобы автоматически интегрироваться-синхронизироваться с какими-нибудь ERP и прочими системами?
#14 #767231
>>767223
Потому что изначально в asp.net были веб формы, которые как фин формы, только нет. А это значит можно пересадить всех индусов разработчиков с десктопов на разработку новых тогда сайтиков без особых усилий и они будут выдавать нормальную скорость разработки. И не надо содомировать себя джяваскриптом тогда еще плохим. Время шло, асп менялось, но традиции остались
>>767235
#15 #767235
>>767231
Спасибо за пояснения. Если ты работаешь с C#, то расскажи пожалуйста почему ты выбрал именно этот язык или стек технологий, а не какой-нибудь другой?
>>767250
#16 #767249
>>767223
на самом деле, коммерческая разработка куда интересней и лутшее, но от индусских замашек никуда не денешься
#17 #767250
>>767235
Да потому что он охуенный. Сейчас то с одним c# конечно сложно если ты не только бэк пишешь, поэтому нужно js и html/css/bootstrap/angular
>>767409>>767617
#18 #767405
>>767223

>Может быть я чего-то не понимаю, но почему корпоративные сайтики пишутся на C#?


Потому что там есть WebForms (фреймворк для разработки сайтов), у которого есть следующие свойства:

1. Если его изучить (изучается относительно долго из-за контринтуитивности и дроча на декларативность), то можно довольно быстро делать сайты. Быстро значит дешево и выгодно.
2. Все сайты на WebForms уёбищны и однообразны, практически не допускающие кастомизации и модернизации. Они безнадежно отстали от современных web-технологий и в принципе не способы их догнать из-за неэффективной парадигмы.

Это делает WebForms идеально подходящим для копроративных сайтов. Потому что копроративные сайты таковы, что ими пользуются только работники копрорации, причем принудительно, поэтому их внешний вид, дизайн и удобство нахуй никому не всрались, а только будут отвлекать от работы. Сайт должен быть тошнотворным, чтобы работник тратил на него как можно меньше времени, и въебывал на основной своей функции. Его уебищный вид не может снизить количество уникальных посетителей или продажи рекламы, потому что посещение принудительно для всех работников - это по сути часть их рабочего места, и никакой рекламы там нет.

Для сайтов, которые предназначены для всего интернета, WebForms не подходит по той же причине - уебищности, из-за которой привлечь посетителей становится невозможно (они в отличие от работников копрорации являются свободными клиентами в конкурентной среде), и как следствие невозможно заработать на впаривании рекламы или еще какого-либо другого дерьма.
>>767429
#19 #767409
>>767250

>Сейчас то с одним c# конечно сложно если ты не только бэк пишешь


Писал копроративные сайты не используя JS вообще. У нас вся конторка так делала, вплоть до того что 90% быдлокодеров боялись JS как огня и не знали его.
>>767493
#20 #767429
>>767405
Даже добавлю свою пасту со своим багетом от WebForms с тех времен когда я работал по найму и писал на этом говне.

Пилю кулстори пары прошедших дней. Надо сделать контрол ASP.NET WebForms. Контрол среди прочего должен позволять загружать файлы. У меня была идея сделать загрузку файла на хуяксе, без рефрешей страниц. Просто потому что это заебись по юзабельности и скорости. В принципе это не требовали, наверное и не надо было даже пытаться. Вообще, многие вещи на ASP.NET лучше даже не пытаться, - только промучаешься, побаттхеришь и потратишь время, потому что они попросту невозможны или стоят неприемлемых затрат времени и сил.
Итак, суть. В нормальных (в вебе нет ничего нормального, поэтому "нормальных" здесь условно) фреймворках такое делается через сабмит формы с файлом (этот изврат следствие того что аяксом нельзя аплоадить файлы из-за дебильности разработчиков браузеров), принятием ответа сервера в невидимый iframe (этот изврат уже как следствие предыдущего извращения - сабмита формы) и обработки этого ответа джаваскриптом. уже всё это показывает что сам html и все браузеры - говно, что в свою очередь говорит о том что в вебе есть целая традиция говноедства, особенно если еще вспомнить джаваскрипт и PHP. В ASP.NET всё получается еще более ебанутым. Чтобы засабмитить форму, нужно чтобы она была. Для этого её нужно сделать. ASP.NET уже имеет одну форму вокруг всей страницы, такова его ебанутая архитектура. В добавок к ней, замечательный HTML слово "замечательный" в данном случае в значении "полное говно" запрещает размещать форму внутри другой формы. Тем самым в ASP.NET фактически нельзя использовать тег form и как следствие аплоадить файлы асинхронно. Можно конечно разместить еще одну форму после формы созданной ASP.NET. Но только не в контроле, потому что ASP.NET помещает весь контрол в форму, и все формы в контроле автоматом окажутся во внешней форме, как следствие будут проигнорированы браузерами согласно ебанутому HTML. Создать форму из контрола динамически джаваскриптом внизу или вверху страницы (вне формы ASP.NET) - заведомый фейл, потому что разметка формы будет находиться вне основной вёрстки, внизу или вверху страницы. Можно было бы сделать эту форму невидимой, заполнить её джаваскриптом скопировав видимые пользователю поля которые он ввёл, и всё было бы заебись. Но это тоже не получится, потому что объект input file нельзя клонировать "в целях безопасности" как страдает безопасность если вы склонировали input file с файлом который указал сам пользователь понятно только ебанутым разработчикам браузеров подобно тому, например, как христианам понятно как женщина была сделана из ребра мужчины, в то время как ни один нормальный человек такой хуйни никогда не поймёт просто потому что он нормален, а не ебанут. Можно всю форму поместить в iframe, iframe может находиться в форме, а форма - в iframe. Но тут другой облом - с вёрсткой. Если на форме находится поле textarea, а оно там находится по требованию заказчика, то его ресайзинг мышью сразу выдаст наличие iframe (появятся скроллбары и ресайзинг будет ограничен iframe) и очень удивит заказчика почему же он не может нормально ресайзить это ёбаное поле textarea. Можно извратиться еще жестче, поместив форму с input file в iframe, а поле textarea расместить вне iframe, после чего при нажатии кнопки "отправить" копировать это поле в форму перед сабмитом. Я уж думал что это и есть решение моей проблемы, но тут внезапно фейл - на самом деле мне надо аплоадить не один файл, а два. Оказывается это может многое менять. Находятся они в макете в таблице в разных строках, и textarea находится между ними. Поэтому разместить их в iframe отдельно от остальной вёрстки не получится. Можно сделать два iframe, по каждому для каждого файла, и сабмитить их раздельно, принимать на сервере тоже как следствие раздельно, проверять что приняты оба, отправлять всю эту херню на клиент, проверять и там, предусматривать ситуации когда только один сабмит прошел успешно, а второй зафейлился, после чего удалять файл из базы, потому что он часть зафейленного сабмита, для чего нужно сделать механизм отслеживания фейловых файлов, для чего надо менять БД и всю работу с ней, одним словом - пиздец. Либо сделать вёрстку сверхебанутой и не по макету заказчика - разместить два файла рядом (которые по логике совсем разные и рядом быть не должны) - проще говоря, зафейлить ТЗ. Относительно элементарная задача, которая даже в относительно нормальных фреймворках решается довольно ебануто и дорого плане времени, в ASP.NET WebForms становится еще на порядок дороже и сложнее.
Короче, няши, ASP.NET WebForms это форменное говно и никогда не пытайтесь сделать на нём нормальный сайт - всё равное не получится. WebForms предназначен не для этого. Он предназначен для быстрого клепания говносайтов в стиле конца 90-х с рефрешем всей страницы по каждому малейшему поводу, плюс многокилобайтовый вьюстейт в довесок. Ах да, забыл сказать что UpdatePanel не работает с input file. Может кому-то это не было очевидно и половину моего рассказа он считал меня идиотом не знающим "богатые" возможности WebForms.
#20 #767429
>>767405
Даже добавлю свою пасту со своим багетом от WebForms с тех времен когда я работал по найму и писал на этом говне.

Пилю кулстори пары прошедших дней. Надо сделать контрол ASP.NET WebForms. Контрол среди прочего должен позволять загружать файлы. У меня была идея сделать загрузку файла на хуяксе, без рефрешей страниц. Просто потому что это заебись по юзабельности и скорости. В принципе это не требовали, наверное и не надо было даже пытаться. Вообще, многие вещи на ASP.NET лучше даже не пытаться, - только промучаешься, побаттхеришь и потратишь время, потому что они попросту невозможны или стоят неприемлемых затрат времени и сил.
Итак, суть. В нормальных (в вебе нет ничего нормального, поэтому "нормальных" здесь условно) фреймворках такое делается через сабмит формы с файлом (этот изврат следствие того что аяксом нельзя аплоадить файлы из-за дебильности разработчиков браузеров), принятием ответа сервера в невидимый iframe (этот изврат уже как следствие предыдущего извращения - сабмита формы) и обработки этого ответа джаваскриптом. уже всё это показывает что сам html и все браузеры - говно, что в свою очередь говорит о том что в вебе есть целая традиция говноедства, особенно если еще вспомнить джаваскрипт и PHP. В ASP.NET всё получается еще более ебанутым. Чтобы засабмитить форму, нужно чтобы она была. Для этого её нужно сделать. ASP.NET уже имеет одну форму вокруг всей страницы, такова его ебанутая архитектура. В добавок к ней, замечательный HTML слово "замечательный" в данном случае в значении "полное говно" запрещает размещать форму внутри другой формы. Тем самым в ASP.NET фактически нельзя использовать тег form и как следствие аплоадить файлы асинхронно. Можно конечно разместить еще одну форму после формы созданной ASP.NET. Но только не в контроле, потому что ASP.NET помещает весь контрол в форму, и все формы в контроле автоматом окажутся во внешней форме, как следствие будут проигнорированы браузерами согласно ебанутому HTML. Создать форму из контрола динамически джаваскриптом внизу или вверху страницы (вне формы ASP.NET) - заведомый фейл, потому что разметка формы будет находиться вне основной вёрстки, внизу или вверху страницы. Можно было бы сделать эту форму невидимой, заполнить её джаваскриптом скопировав видимые пользователю поля которые он ввёл, и всё было бы заебись. Но это тоже не получится, потому что объект input file нельзя клонировать "в целях безопасности" как страдает безопасность если вы склонировали input file с файлом который указал сам пользователь понятно только ебанутым разработчикам браузеров подобно тому, например, как христианам понятно как женщина была сделана из ребра мужчины, в то время как ни один нормальный человек такой хуйни никогда не поймёт просто потому что он нормален, а не ебанут. Можно всю форму поместить в iframe, iframe может находиться в форме, а форма - в iframe. Но тут другой облом - с вёрсткой. Если на форме находится поле textarea, а оно там находится по требованию заказчика, то его ресайзинг мышью сразу выдаст наличие iframe (появятся скроллбары и ресайзинг будет ограничен iframe) и очень удивит заказчика почему же он не может нормально ресайзить это ёбаное поле textarea. Можно извратиться еще жестче, поместив форму с input file в iframe, а поле textarea расместить вне iframe, после чего при нажатии кнопки "отправить" копировать это поле в форму перед сабмитом. Я уж думал что это и есть решение моей проблемы, но тут внезапно фейл - на самом деле мне надо аплоадить не один файл, а два. Оказывается это может многое менять. Находятся они в макете в таблице в разных строках, и textarea находится между ними. Поэтому разместить их в iframe отдельно от остальной вёрстки не получится. Можно сделать два iframe, по каждому для каждого файла, и сабмитить их раздельно, принимать на сервере тоже как следствие раздельно, проверять что приняты оба, отправлять всю эту херню на клиент, проверять и там, предусматривать ситуации когда только один сабмит прошел успешно, а второй зафейлился, после чего удалять файл из базы, потому что он часть зафейленного сабмита, для чего нужно сделать механизм отслеживания фейловых файлов, для чего надо менять БД и всю работу с ней, одним словом - пиздец. Либо сделать вёрстку сверхебанутой и не по макету заказчика - разместить два файла рядом (которые по логике совсем разные и рядом быть не должны) - проще говоря, зафейлить ТЗ. Относительно элементарная задача, которая даже в относительно нормальных фреймворках решается довольно ебануто и дорого плане времени, в ASP.NET WebForms становится еще на порядок дороже и сложнее.
Короче, няши, ASP.NET WebForms это форменное говно и никогда не пытайтесь сделать на нём нормальный сайт - всё равное не получится. WebForms предназначен не для этого. Он предназначен для быстрого клепания говносайтов в стиле конца 90-х с рефрешем всей страницы по каждому малейшему поводу, плюс многокилобайтовый вьюстейт в довесок. Ах да, забыл сказать что UpdatePanel не работает с input file. Может кому-то это не было очевидно и половину моего рассказа он считал меня идиотом не знающим "богатые" возможности WebForms.
#21 #767488
>>766002 (OP)
Блять. Какаяже Визуальная Студия душная программа. Мало того, что устанавливается по 100 лет, так ещё и постоянно какие-то ебаные ошибки при установке, невидимые ошибки при запуске, и БЛЯТЬ ЦЕЛАЯ СВАЛКА ГОВНА в установленных программах.
#22 #767493
>>767409
Ты - это я.
>>767429
Заплакал немношк.

Хорошо что сейчас 2016.
#23 #767494
>>767488
У тебя винда от васяна или студия с торентов?
>>767521
#24 #767521
>>767494
попизди еще, что это не так
мимо-анон
>>767528
#25 #767528
>>767521
Неосиляторы не осиливают
11 Кб, 315x300
#26 #767617
>>767250

> поэтому нужно js


Интерестно, а почему MS не сделает компилятор C# -> JS?
Это же сейчас тренд (Clojure/Scala/Kotlin/GWT) что бэкенд и фронтенд пишется на одном языке.

А они зачем-то в typescript вкладываются...
>>767659
575 Кб, 2500x1531
#27 #767620
>>767488
Тут на днях релизнулась стабильная XamarinStudio 6.0 со стильной темной темой и поддержкой C# 6.0
Она стала заметно быстрее и плавнее.

А еще в VisualStudioCode появилась нормальная отладка C# приложений.

В Rider пока новых билдов не было (наверное интегрируют новый CoreCLR), но тоже что-то интересное выкатят.
>>767654
253 Кб, 1280x853
#28 #767653
Как правильно реализовать GetHashCode в IEqualityComparer<T> ?
Хочу сравнивать такие объекты http://pastebin.com/3gEDDDzR
Я написал реализацию, но не уверен что это правильно http://pastebin.com/4DBfsM89
>>767659
#29 #767654
>>767620
т.е. до недавнего времени Xamarin студия не умела в C# 6? MS VS же уже почти год как умеет.
>>767671
#30 #767655
>>767488
Да вроде не все так страшно, из того что ты написал у меня есть только

>ЦЕЛАЯ СВАЛКА ГОВНА в установленных программах

#31 #767659
>>767617
http://duoco.de/

>>767653
https://msdn.microsoft.com/en-us/library/ms132151(v=vs.110).aspx#Anchor_3
Нужно больше проверок на null и GetHashCode должен все поля брать, судя по Equals
>>767661>>767668
#32 #767661
>>767659

>duocode


Интересно, какой там трэшак творится в более-менее сложных конструкциях.
>>767675
#33 #767668
>>767659

>GetHashCode должен все поля брать


Не понимаю как это делается, особенно если у меня будет класс с кучей разнотипных свойств.
>>767673
#34 #767671
>>767654
В стабильной ветке - нет, в alpha/beta - да
#35 #767673
>>767668
возьми у своих свойств их хэш-коды и соотнеси их вместе, используя простые числа. это вроде бы стандартная практика. можно еще сдвиги использовать, но я не знаю тонкостей такого подхода
#36 #767675
>>767661
Ты когда нибудь видел JS в google search/gmail/google docs?
Там JS давно на уровне байт-кода.

У Google есть проект Closure Compiler который буквально компилирует JS->JS,
так что потом без source-map уже ничего не поймешь.
17 Кб, 681x537
#37 #767707
Virtual member call in consturctor

Мне кажется, что я принципиально что-то делаю не так. Насколько неадекватна архитектура пикрелейтед, и как можно её улучшить?
>>767727
#38 #767727
>>767707
Можно spritemap заполнять не в конструкторе, а в отдельном методе, посмотри builder pattern например.

http://www.matthewedmondson.info/2012/08/virtual-method-call-in-contructor.html
#39 #767990
>>766002 (OP)

>Какую ИДЕ выбрать?


Могли бы и про замарин написать, пользуюсь под виндой, зависимости нет, по производительности среда летает в отличии от VS
>>767995
#40 #767995
>>767990
Мне xamarin.com только visual studio под винду предлагает скачать
#41 #768139
сап, паrни. есть 2 решения и мне нужно перекинуть 1 класс с первого во второе, но этот класс еще создает обьекты других классов с первого решения.
у 1-го решения уже в референсах лежит ссылка на 2-й и теперь мне надо сделать ссылку со 2-го на 1-й? Зацикливание!
Вариант, типо, перекинь все нужные классы вместе с тем который перекинул - не вариант.
Щито делать, дэсу?
>>768142>>768164
#42 #768142
>>768139
Так вынеси все в общую dll
#43 #768164
>>768139
Сделать третье решение, и в обоих классах ссылаться на него
4 Кб, 475x88
#44 #768490
Sup, как мне настроить поведение combobox?
Нужно чтобы в зависимости от четверти появлялся список из цифр зубов. Ну то бишь я выбираю допустим первую четверть, а мне выходит зуб с 18-11, выбираю вторую и в выборе только с 28-21.
>>768491
#45 #768491
>>768490
с помощью контекста окна, событий OnPropertyChanged и ObservableCollection-членов. короче, велкомэ ту мввм
>>768495
#46 #768495
>>768491
Блядство, а можешь поподробнее пожалуйста? биндинги здесь никак не помогут? Я не шарю в проге :с
>>768503>>768505
#47 #768503
>>768495
С самим комбобоксом тебе делать почти ничего не нужно, только забиндить свойство ItemsSource на коллекцию в твоей ViewModel. Можно на простой IEnumerable.
Далее, биндишь SelectedItem на свойство модели представления, которое у тебя за четверть отвечает. У него в сэттере уже вызываешь нужную логику загрузки списка.
Собственно все, даже с event trigger'ами ебаться не нужно.
>>768508>>768543
6 Кб, 236x181
#48 #768505
>>768495
1) смотишь что такое мввм
2) создаешь вью модель и имплементиш INotifyPropertyChnaged
3) создаешь проперертю в классе "Четверть" и пропертю-список четвертей
4) Хардкодиш лист зубов
5) Делаешь лист тех, которые надо отображать
6) Копируешь зубы из хардкожденой коллекции в ту, которую показывать надо на изменение проперти четверть
7) привязываешь вьюшку (то, что на скрине) к моделе представления
>>768508
#49 #768508
>>768503
>>768505
Спасибо, благородные доны. ViewModel это новый класс, где будут храниться четыре листа моих зубов?
#50 #768509
Хлопци, жизнь занесла меня в такое болото, что мне нужно для курсовой сделать БД, оболочка к которой будет на сисярпе (а хули, я ничего больше не знаю). Сервер по требованию преподавателей должен быть на ms sql. И вот вопрос: стоит ли делать отдельное серверное приложение на шарпе, в котором будут находится sql-команды на выполнение процедур и который будет обеспечивать связь непосредственно между приложением-клиентом и sql-сервером? Или сервер на шарпе будет лишним звеном, и все sql-команды и адаптеры хуячить в клиентском приложении? Тогда ведь понадобится в клиентском приложении позаботиться о сохранности и зашифрованности передаваемой инфы, не перегруженным ли будет клиентское приложение? + В зависимости от некоторых условий, диктуемых клиентским приложением, предполагаются различные ответы sql-сервера, опять же, придётся все эти проверки делать в клиентском приложении, что опять же, ящитаю, будет лишним.

Будет ли сильно замечаться потеря в производительности, если использовать промежуточный сервер на сисярпе, если приложение-сервер и сервер ms-sql будут находится на одной физической машине?

Если всё таки стоит делать отдельный сервер на шарпе, как его лучше реализовывать (имею ввиду через какие классы/технологии/фрэймворки/способы коммуникации), учитывая, что будет происходить обмен не только текстовой инфой в большом размере, но и фото.
#51 #768510
>>768509
Если на одном компе, преподу показать - нахуй тебе сервер?
>>768511>>768516
#52 #768511
>>768510
Но в реальной жизни никто из десктопа к БД не коннектится(кроме SQLite)
#53 #768516
>>768510
Ну мне не совсем преподу показать. Это не только курсовая, но и приложение для одной организации.
#54 #768520
>>768509

>Будет ли сильно замечаться потеря в производительности, если использовать промежуточный сервер на сисярпе, если приложение-сервер и сервер ms-sql будут находится на одной физической машине?



Забыл уточнить, сервер в любом случае будет располагаться в локальной сети, ибо скорость передачи и трафик не безлимитный.
#55 #768525
>>768509
Сделай сервер с помощью wcf например
#56 #768530
>>768509
Что ты понимаешь под отдельным приложением? Чем тебе не подходит традиционная 3-tier архитектура с уровнем доступа к данным?

Алсо, не надо выполнять напрямую sql из кода. Даже параметризованные запросы только в легаси встречаются. Используй ORM. Только дженерик репозитории не используй. Это рак и за такое нужно клавиатурой по ебалу бить.

А вообще, судя по твоему посту, у тебя нет представления о будущей архитектуре вообще. Пойми сначала, что нужно сделать. Потом прочитай про трехуровневую архитектуру.
#57 #768538
>>768530

> Только дженерик репозитории не используй. Это рак и за такое нужно клавиатурой по ебалу бить


не, ну чё ты, а
#58 #768543
>>768503

>коллекцию


Четвертей или зубов? Зубы должны располагаться в листах четвертей в ViewModel?
#59 #768550
>>768530

> Используй ORM. Только дженерик репозитории не используй.


А если у меня Xamarin в котором нет EF вообще, а есть только ссаный "Sqlite.query<T>(...)"?
>>768551>>768695
#60 #768551
>>768550
ток делай параметризованные запросы, не втуляй, шо юзер послал, в запрос
#61 #768648
имеет ли смысл углубляться в c# и пробовать пилить с его помощью приложения для androida? или забить и учить java
>>769523>>769526
#62 #768650
>>768530
Если не дженерик репозиторий, то что? Не могу догнать
#63 #768679
Доставьте реализацию алгоритма AKS на шарпе, чтобы мог проверять числа любой длины.
#64 #768695
>>768550
Там dapper можно заюзать.
211 Кб, 680x1071
#65 #768864
Как устроиться джуниором если есть ВО, но нет особо никакого опыта?

Рассылал резюмешки по компаниям, даже на интервью не пригласили, мрази. Посоветуйте чего, посоны.
#66 #769015
>>768864
Няш, тебе сюда >>768960 (OP)
#67 #769422
а может у кого есть вмшмастер на Resharper 2016?
>>769499
#68 #769472
Шарпаны, есть кто может вменяемую верстку для UWP на ХАМЛе замутить за определенный бюджет? Или лучше на фрилансах всяких поискать
#69 #769499
>>769422
На русракере в комментах вроде была ссылка на сервер лицензий
#70 #769502
>>767429
Сука, вспомнил
#71 #769521
>>768864
Слишком быстро ты выхлопа какого-то ожидаешь
Я 3 месяца резюме рассылал каждую неделю
было всего лишь 3 собеседования, на третьем взяли на работу.
#72 #769522
хлопцы, пытаюсь создать клиент-серверное приложение, и тут встал вопрос как организовать общение между клиентом и сервером? читаю сейчас на рсдне да профессоре вебе статьи про NetworkStream и TcpListener, TcpClient и прочие сокеты, но заметил, что статья на рсдне датируется 2005 бородатым годом. не устарела ли эта технология связи, может уже появилось что то новое, на что лучше обратить внимание?
>>769528
#73 #769523
>>768648
ну ответьте же
>>769528>>769530
#74 #769526
>>768648
Говорю с дивана, но учитывая схожесть синтаксиса обоих сисярпа и джавы, я бы точился под то, под что больше существует готовых фреймворков и апи для андроида.
#75 #769528
>>769523
стОит

>>769522
где физически будут находиться клиент и сервер? можешь, конечно, обойтись сокетами, можешь WCF развернуть
>>769531>>769532
#76 #769530
>>769523
в смысле, имеет, лол
#77 #769531
>>769528
вообще, предполагается следующее развитие событий: в основном, клиент и сервер будут находится в одной локальной сети, но в исключительных случаях предполагается подключение к серверу через интернет.
#78 #769532
>>769528
дак что там насчёт сокетов, они уже устарели, и появились более функциональные технологии? и что нужно читать о WCF в контексте моей задачи?
>>769546
#79 #769546
>>769532
Не для того .net делали, чтобы в сокеты пороться постоянно. В контексте твоей задачи тебе нужно просто прочитать про wcf, например у троелсена. А лучше сразу web api!
47 Кб, 1181x390
144 Кб, 1366x768
103 Кб, 1366x768
#80 #769610
Sup, я в проге новичок и у меня есть два серьёзных вопроса.
1. На скрине у меня 32 комбобокса, которые формируют зубную формулу, в каждом по 9 вариантов статуса зуба. Как мне не плодить все эти статусы в каждом комбобоксе? Ну вы понимаете, у меня в каждом комбобоксе по 9 вариантов и все они одинаковые.
2. Работа с заполнением вордовского документа из шаблона ворда.
Короче, в одном окне я заполняю одну страницу в ворде, перехожу в новое окно, заполняю форму и пытаюсь внести изменения в документ. Все вылетает на эксепшене
>>769616>>769991
#81 #769616
>>769610
Так делаешь у зуба СтатусЗуба в виде enum'а например, делаешь коллекцию зубов и ехал биндинг через биндинг.
Проверь свойсвто ErrorCode исключения.

>Kursach.exe


Вышли на новый уровень
>>769643
1988 Кб, 2730x1280
#82 #769630
Шарпач, объясни в чем профит передавать StringBuilder в метод с использованием слова ref? Сегодня увидел такую штуку на работе, но не смог понять в чем космический эффект.
>>769636>>769771
25 Кб, 400x400
#83 #769631
Посоны, а последнюю книгу Албахари C# 6.0 in a nutshell где можно взять на ингрише? Я бы заплатил 50 бачинских и купил, но сука жаба давит. На русеке не надо.
>>769636
#84 #769636
>>769631
Совсем охуел? На рутрекере.
>>769630
Ну так посмотрел бы зачем там ref то используется. Но за такое пиздить надо.
>>769637>>769771
14 Кб, 476x356
#85 #769637
>>769636
И правда охуел. Как-то не подумал там искать. Извиние.
#86 #769643
>>769616
таак, а куда впилить коллекцию enumerable? создать под неё класс? биндингом привязать объект класса к каждому комбобоксу?
>>769644
#87 #769644
>>769643
Во ViewModel твоей вьюхи конечно же! Если ты не читал про mvvm, то сейчас самое время.
>>769673
#88 #769673
>>769644
А какой биндинг использовать, чтобы получить коллекцию из класса?
>>769698
#89 #769698
>>769673
Все, разобрался, спасибо анон.
#90 #769771
>>769630
>>769636
ну чтобы сделать varName = new StringBuilder, очевидно
насчет бить не уверен, если в разных методах формируется строка по ходу выполнения какого-то куска. ну не знаю короче
>>769782
#91 #769782
>>769771
StringBuilder и так

>Represents a mutable string of characters


а тут еще ref этот ебаный.

>ну не знаю короче


В этом и суть, ref только запутывает код, и пиздить таки нужно.
>>769794
#92 #769794
>>769782
ну локальная переменная же. если ты в методе присвоишь новое значение ей, то из метода без реф оно уже не выйдет
>>769819
#93 #769819
>>769794
Так нет причин менять ссылку на StringBuilder, можно поменять его состояние. Если функция хочет что то вернуть, она должна просто это вернуть.
55 Кб, 625x450
#94 #769830
Вкатываюсь в мвц после вебформса.
Поясните, как здесь кэшировать полученные данные? В вебформсах всегда пользовался SqlDataSource и CacheKeyDependency.
Вот допустим у меня есть
public ActionResult Customers_Read([DataSourceRequest]DataSourceRequest request)
{
var list = DAL.GetAllCustomers();
return Json(list.ToDataSourceResult(request));
}
Куда мне запихать list, чтобы не получать из БД каждый раз овер 9000 записей при любом действии с гридом? И как их таки получить заново при нажатии кнопки refresh?
Во всех туториалах куда ни глянь ебаный EF, так что приходится спрашивать на двощах. Всем бобра заранее.
>>769865
39 Кб, 456x342
#95 #769865
>>769830

> 2016 год


> .NET, ASP.NET MVC, EF, MSSQL оффициально поддерживают Linux/macOS


> EF уже дошел во версии 6.X и теперь его переписывают с 0


> Кто-то продолжает насиловать труп и использовать подходы из 2000


Интерпрайз такой интерпрайз (небось еще и гос контора)
>>769914
#96 #769914
>>769865

>M$SQL


Дорого же.
И вообще, ОРМ нинужны, у меня от запросов, которые они генерируют, глаза вытекают просто.
Выдаю жсоном все данные сразу, но пейджинг, сортировку и фильтрацию делаю на клиенте, все работает как мне надо, считывает заново только при рефреше.
#97 #769991
>>769610

>ФАЙЛ ПРАВКА ВИД СБОРКА ПИЗДЕЦ

>>799095
#98 #770056
>>766002 (OP)
Здравствуйте, шарпобояре. Я так понимаю, на C# можно делать всё, от консольных хеллоувордов до игор с графоном. Какое из направлений считаете наиболее перспективным, чтобы моё увлечение программированием стало приносить какую-то денюжку, не заглохло в ближайшие 5 лет, а может даже и помогло найти постоянную работу хотя фуллтайм работа в офисе мне нахуй не всралась, если честно. Я вот Пахомова и Подбельского почитал немного 3 книги, дальше думаю копать юнити или андроид. Что посоветуете?
>>770089>>770134
#99 #770089
>>770056

> Что посоветуете?


1) Перестать задавать такие вопросы, они всех заебали еще на 10 перекате
2) Пройти сюда >>769498 (OP)
>>770124
#100 #770124
>>770089

>всех заебали



Иди нахуй сразу. Твое настроение никого не ебет.
>>770131
#101 #770131
>>770124
Попробуй почитать шапку.
#102 #770134
>>770056
Юнити и веб.
Есть еще ормки на wpf.
>>770135>>770531
#103 #770135
>>770134

> Есть еще ормки на wpf.


Црмки
#104 #770345
Кто что может сказать о жизненном цикле ресурсов на платформе .NET? Гугел молчит, по крайней мере у меня.
#105 #770385
>>766002 (OP)
Здрасте
До какого уровня надо читать книги по Сишарпу, чтобы уметь писать типичные и простые вещи на Юнити?
К чему не прикасаться?
>>770398
#106 #770398
>>770385
Троелсон, синтаксис и ооп
>>770405
#107 #770405
>>770398

>Троелсон


Бля, книга на 1300 страниц.
Я как бы хочу знать Юнити, но не настолько.
>>770406
#108 #770406
>>770405
прочитай части 2,3,4 и всё
>>770434
#109 #770434
>>770406
Но зачем читать 2 часть, если там определения из 1-й?
>>778630
29 Кб, 300x246
MSSQL #110 #770526
Анон, молю тебя, поясни за mssql в шарпах, пол дня их ковыряю никак не могу передать значение переменной в базу, оче хочу засунуть её туда не прибегая к sql языку через query запросы, можно это реализовать?
>>770551
#111 #770531
>>770134
Добра!
#112 #770534
антохи, для клиент-серверного приложения внутри локальной сети что лучше использовать - именованные трубы или tcp-сокеты (или что там у tcpListener и tcpClient)? под "лучше" понимается способность быстрее передавать с клиента на сервер и обратно большое количество текстовой информации и изображений, также приветствуется гибкость (в плане различных настроек, типа приоритет передачи именно по этому каналу/сокету и т.д.) и возможность шифрования передаваемой инфы (да да, нахуй это нужно внутри локалки, но всё же может понадобится для некоторых ОЧЕ важных данных)
inb4: читай WCF мудак. блят, я бы с радостью его освоил, но заглянув в интернет и книгу троелсена, я увидел, что читать по нему столько, что я насрал как конь со страху, честно. учитывая что время поджимает меня оче сильно, а в WCF придётся как мне кажется долго ковыряться в поиске методов реализации интересующего меня функционала, я пока что решил всё же использовать либо tcp-сокеты либо пайпы, но не могу определиться, что из этого лучше, ибо на форумах в сообщениях за различные даты встречал разные противоречивые мнения. вот хочу современные мнения узнать. или всё таки не выёбываться и потратить пару дней на дроч WCF, если он того стоит?
>>770551
#113 #770551
>>770526
Ебаный Entity Framework
>>770534
Ты охуел штоле? Тебе такой то soap выкатили, дали инструменты, тебе надо просто сгенерить проксю и инвокнуть ебаный метод. Троелсен - 50 страниц, ну охуеть теперь. Но в целом можно web api выучить за 10 минут и сделать уже
#114 #770812
Когда мы делаем Web API, нужно ли проводить валидацию на стороне сервера при POST или PUT запросах?

В MVC я делал это, наследуя ViewModel от IValidatableObject.

Есть мысль передавать в качеств е параметра в акшн-метод не саму сущность, а ее dto, и dto так же наследовать от IValidatableObject.

Дайте, пожалуйста, совет.
>>771025
#115 #770817
Вместо репозиториев с EF использую вот такую залупу
http://pastebin.com/DPShpHjE
Все правильно делаю?
>>770825
#116 #770825
>>770817

> переименовал репозиторий в DataService и радуется

#117 #771025
>>770812
естественно, валидацию проводить нужно. можно просто использовать ValidationAttribute-ы для пропертей твоей модели
#118 #771358
Есть тут .net-анон с опытом валидации на WPF с правилами чуть сложнее, чем "показать error template, если инпуты пустые"?
Вкратце: есть форма логина и есть требования по валидации. Кроме очевидных пустых инпутов может быть еще неправильный пароль, юзернейм и так далее, которые нужно подкрашивать. Логином, ровно как и самой валидацией, у меня занимается не модель представления, а другая либа вообще. Как лучше организовать моменты хотя бы тех же неправильного юзернейма и пароля? IErrorDataInfo говно ебаное, с ним нормальную валидацию не сделаешь. Инпутов на форме хоть и немного, но не хочется на каждый заводить HasError свойство, чтобы к нему забиндить error template. Или других способов все равно нет?
141 Кб, 700x700
#119 #771450
Здравствуй шарпач, мне нужна твоя помощь.
Есть один говнокод, который мне волею судьбы нужно поддерживать. Проблема в том, что сроки ограничены, а код работает не быстро. Совсем небыстро. В начале прога начитывает две таблицы из двух разных баз sql с двух разных серверов. Потом ебется с ними создавая зависимости и только через 40 минут можно собственно что то отлаживать. Наебавшись с гуглом я сократил это время примерно до 25 минут напихав plinq во все поля. Но все ровно есть куча мест, в которых процесс грузит систему на 25% максимум (1 ядро из 4).
Два особо проблемных куска это собственно начитывание данных из БД. Выглядит приммерно так:
while (reader.Read())
{
lst.Add(
new Customers()
{
customer_id = (int)reader.GetValue(0),
address = (string)reader.GetValue(1),
region = (int)reader.GetValue(2),
});
}
Хуярится все это через OleDb. Я вообще хз что тут можно оптимизировать.

Второй момент это работа с листами. Как я понял операции удаления из листа нельзя распараллелить. И это длится минуты. Я хз что с ними можно сделать, кроме как захуярить в массивы и удалять через циклы.

Есть какие идеи?
#120 #771479
>>771450
Вангую что каждый reader.GetValue это отдельный запрос в базу. Нельзя как-то сделоть через IQueryable и LINQ?
>>771638>>771689
#121 #771496
>>771450
Сколько же у тебя записей в таблицах?
Convert.ToInt16 #122 #771533
есть у нас c#
и есть часы на с#
зачем в часах используют строку Convert.ToInt16 ? что это значит?
например,
h = Convert.ToInt16(Console.ReadLine());
#123 #771603
>>771607
#124 #771607
>>771603
and what?
гугл и справочники обыскал, нигде толкового ответа нету
#125 #771638
>>771479

> Нельзя как-то сделоть через IQueryable и LINQ?


ХЗ, я в чтении из sql не силен. Если есть идеи буду благодарен за наводку.

> Сколько же у тебя записей в таблицах?


В сумме что то около полумиллиона.
#126 #771689
>>771479
Это не отдельный запрос
#127 #771692
>>771533
ну тип кароч приобразуит в шарт страку))
#128 #771767
>>771450
заюзируй Hashtable вместо листа. вродикак, удаление там шустрее
http://theburningmonk.com/2011/03/hashset-vs-list-vs-dictionary/
#129 #771829
Аноны, раньше не занимался программированием, но по долгу службы мне оно нужно и я решил вкатиться. Нужно научиться писать плагины для приложений Autodesk, которые облегчат мою работу. С чего мне начинать? Я примерно прикинул что и как должно работать, нашёл API по интересующему меня продукту, теперь осталось всё это притворить в код. Сделаю оболочку на WPF, остальное нужно написать. Так вот, как учить C#? Например мне нужно что бы приложение делало "это". Я забиваю в Гугле: как сделать на С# "это" и т.д. Или есть методы проще и эффективнее. Прошу совета.
>>771834
#130 #771834
>>771829

> приложение делало "это"


ну какт слишком размыто. интернеты не смогут ответить на все вопросы в такой манере. есть говнокниги в стиле "саветы праграмиздам", но и они не покроют в достаточной мере ответы на интересующие тебя вопросы. как правило, это знакомство с основой языка (+ некоторые внутренние части), плюс книги/статьи по шаблонам, архитектуре приложений и прочей хуите
>>771880
1113 Кб, 828x828
ASP NET RC2 #131 #771846
Спокойно пишешь ASP.NET MVC сайтик на coreclr DNX
и тут бац (спустя пол года) выходит RC2

=> Начинаешь перекатываться (ведь DNX стал deprecated) =>
Хуяк и перестали работать DllImport (юзаю нативную библиотеку для сжатия картинок).
https://github.com/dotnet/cli/issues/3105

=> ОК перекачусь c CoreCLR на MONO =>
Хуяк, а MONO больше не поддерживается, на Linux/macOS теперь только CoreCLR
https://github.com/dotnet/cli/issues/2576#issuecomment-211625062

=> ОК откачусь на DNX =>
Хуяк, а DNX закрыт и установщик выпилен
>>771848>>771967
#132 #771848
>>771846
Так лол, запакуй либу в nuget пакет и ставь локально. dotnet pack и все.
>>771921
#133 #771880
>>771834
мне например нужно, что бы моё приложение брало данные из таблицы Excel, и выдавало мне нужный результат в моём приложении в табличном виде, что бы были фильтры и сортировка. Значить гуглить DataGridView например?
>>771882
#134 #771882
>>771880
ну плюс юзадж OleDb при работе с экселем, наверн.
>>771884
#135 #771884
>>771882
ок, буду тыкаться сам плюс сюда ответы задавать.
>>771888
#136 #771888
>>771884
под твой вопрос интернет уже придумал ответ, кстати говоря
>>771889
#137 #771889
>>772063
#138 #771921
>>771848
Думаешь это поможет при запуске на Linux/macOS?
>>771943
#139 #771943
>>771921
А зачем тебе пакет там? У тебя при билде будут те же dll'ки.
>>771967
393 Кб, 650x650
#140 #771967
>>771943 >>771846
Ох, анончик в CoreCLR RC2 все РАБОТАЕТ, это я протупил.

Забыл что у этой либы были динамические зависимости на другие (и без них она не загружалась в память).
Через brew установил все зависимости и ВСЕ ЗАРАБОТАЛО.
#141 #772063
>>771889
благодарю
#142 #772620
Как добавить в проект проект модульных тестов в VS2015, именно не создать, а добавить?
>>772792
#143 #772792
>>772620
%solution name% context menu -> Add -> Existing project
#144 #773723
Поставил тут сеюе решарпер, а он мне во всех foreach циклах начал ругаться на переменную:
Access to foreach variable in closure. May have different behavior when compiled with different versions of the compiler.
Начал гуглить, но так нихуя и не понял нужно мне что то менять или забить хуй?
>>773739>>773932
#145 #773739
>>773723
Нахуй тебе циклы то?
>>773752
#146 #773752
>>773739
Чтоб обработать все элементы массива по очереди.
>>773762
#147 #773762
>>773752
.Select() ?
>>773776
#148 #773776
>>773762
И что я буду им делать?
>>773788
#149 #773788
>>773776
Элементы обрабатывать
>>773791
#150 #773791
>>773788
Так мне нужно каждый по очереди. Как это сделать селектом без цикла?
#151 #773795
Так ты бы код то показал, а то нипанятна жи нихуя
>>773798
#152 #773798
>>773795
Код на работе. Там целый проект. Есть один foreach и в нейм пара сотен строк. Вроде все работает, но решарпер ругается описанным выше длинным словом. И нихуя не понятно имеет его мнение смысл или нет.
>>773815
#153 #773815
>>773798
В целом забей хуй, если работает.
#154 #773932
>>773723
Зависит от компилятора. На одном может быть одна и та же переменная на каждом шаге цикла, т.е. с ссылочными типами можно на грабли сесть. А на других на каждом шаге новая переменная делается для текущего элемента. Поэтому решарпер и кидает warning
>>774023
#155 #774023
>>773932
Примерно как то так и в гугле написано. Но мне бы хотелось понять, как дела обстоят именно у меня. Как я понял, мне нуждно чтоб делалась каждый раз новая. Но как в этом убедится?
>>774039
#156 #774039
>>774023
foreach (var a in ...)
{ var innerA = a;
useInnerA(innerA); }
#157 #774114
есть у кого-нибудь линк или методика построения графа дорожных/пешеходных переходов/~ездов/дорог из данных гугле(или не только)мапа?
из гугл апи, которые хоть как-то подходят под эту задачу, тольк Directions или SnapToRoads. но они, по сути, выполняют задачу поиска пути по имеющимся данным, а я хочу эти данные сконструировать для города/региона/страны
#158 #774263
Пацаны, как думаете, сколько фронт JS макаке потребуется времени, чтоб вкатиться?
>>774268
#159 #774268
>>774263
Пару недель. Может больше. Может меньше.
Смотря на сколько ты макака.
>>774279
#160 #774279
>>774268
а стоит?
>>774285
#161 #774285
>>774279
А это уже ты мне скажи. Нахуя оно тебе?
>>774288>>774289
#162 #774288
>>774285
ну хуй его знает ёпта
#163 #774289
>>774285
на работе получил такое предложение, учить C#. у меня все на нем кодают, думаю легко пойдет, помогут если-что.
#164 #775338
запилите адрес конференции
>>775367
#165 #775367
>>775338
Какой?
#166 #775368
Посоны, что на с# пишут-то? Нужно что-то из этого?
1. Wpf для десктопа?
2. Аспнет ? (Да, нужен)
3. Ксамарин для ведроида и оси?

Во что вкатываться?
>>775405>>775416
#167 #775405
>>775368
не поверишь, но на всем этом пишут и все нужно
#168 #775416
>>775368

> 1. Wpf для десктопа?


Ксамарин для десктопа. Нахуй ненужно.

> 2. Аспнет ? (Да, нужен)


Сайт на шарпе. Идея хорошая, но сосет с проглотом у пхп.

> 3. Ксамарин для ведроида и оси?


Рисовать треугольные квадраты и овальные пятиугольники вместо кнопок с изогнутым текстом. Если освоишь, то хорошо. Если нет, похуй.
>>775443
150 Кб, 500x430
#169 #775443
>>775416

>Ксамарин для десктопа.


>сосет с проглотом у пхп

#170 #775809
Суп.
Вот есть у меня listview, задаю ему итемссурс - коллекция пользовательских объектов. У этих объектов есть своя коллекция ещё объектов, и надо при SelectionChanged в listview рядом рисовать treeview по коллекции, которая лежит в выделенном пользовательском объекте.
Мне прямо через код менять итемссурс для тривью при SelectionChanged?
>>775812
#171 #775812
>>775809
если я не ошибаюсь и это WPF, то тебе через код такие вещи менять не нужно. ну, если ты не пишешь в стиле button1_Click
>>775815
#172 #775815
>>775812
Да, у меня wpf и mvvm, и всё норм до момента, когда надо treeview отрисовывать по селекшну в lv. Непонятно, как тут сделать красиво
>>775830
#173 #775824
Бандосы, есть какой то метод, в котором присутствует шаблонный тип Т. дак вот, как мне кастовать массив байт к этому шаблонному типу. К примеру,

byte[] byteArray=new byteArray[unknownsize];
T Rezult = (byte[])byteArray;

Разумеется, код выше нескомпилируется. Я было думать в сигнатуре метода указывать "where T:IConvertible", но судя по документации, имплементация IConvertible позволяет кастовать к шаблонному типу всякие там инты, стринги и прочую шушару, но в моей ситуации типом Т может быть только один мой кастомный enum, или System.Data.DataTable. Как быть, двощ, куда копать? инбифо землю себе рой мудила
>>775829>>775830
#174 #775829
>>775824
Ты какую непонятную вещь хочешь сделать.

зачем тебе кастовать к byte[] ? Хочешь какие-то специфические для byte[] вещи сделать? Если да, то:

byte[] result = (byte[])byteArray;
byte[] result0 = result.Reverse() // для примера
T Rezult = (T)result0;

Конкретно я делал так:
Data[j] = (T)((ICloneable)Data).Clone();
где Data это T[].
>>775834
#175 #775830
>>775815
ну тут вроде бы как у listView2 идет привязка к датасорсу модели, который поменяется (и просигналит OnPropertyChanged либо другим каким-нибудь ивэнтом) при изменении выбранного айтема для listView1

>>775824
ну прям совсем универсально не выйдет, тебе нужна какая-нибудь абстракция, которая может создавать инстанс имени себя из byte[]
>>775834
#176 #775834
>>775829
Я хочу кастовать не К byte[], а массив byte[] хочу кастовать к шаблонному типу Т
>>775830
то есть типа я создаю абстрактный класс AClass, в котором я делаю оператор public static explicitit operator AClass (byte[] byteArray)
{
}
>>775835>>775947
#177 #775835
>>775834
тьфу блять, не дописал

то есть типа я создаю абстрактный класс AClass, в котором я делаю оператор public static explicitit operator AClass (byte[] byteArray)
{
/
проверка условий, по которым возвращается тип, которым может быть Т?
/
}
#178 #775947
>>775834
ну можно без explicitit operator (и даже лучше в таком случае), а просто объявить интерфасе с единственным методом
interface ICanBeConvertedFromByteArray
{
ICanBeConvertedFromByteArray GetValue(byte[] array);
}

ну, в любом случае, к T ты не приведешься. только после выполнения вышеуказанного метода и явным кастом с потенциальным InvalidCastException
#179 #775975
Посоны, вот рисую на WPF, у меня например окно 1920х1080(например), на нем там элементы и все такое. Открываю проект на ноутбуке, там 1368х768(или что-то вроде того). А форма в 1920х1080 и соответственно, все что на форме не помещается не отображается снизу(по бокам все нормально) и нельзя вниз проскролить форму, вопрос - как добавить прокрутку, чтобы можно было вниз листать?
>>775981
#180 #775981
>>775975
в ScrollViewer запхай родительский контейнер
#181 #776116
Сап, шарпач.

Дано: wpf-приложение. Использую windowchrome для красивой nc.
Вопрос: что сделать с resize и move в системном меню, чтобы было заебись?
Просто так они не работаю. Если убрать их из меню через винапи, ресайз и мув самого окна не работают, задисэйблить их тоже не вышло.
#182 #776699
Собираюсь понаехать к одной тянке погостить и решил установить ей кейлоггер. Не будем обсуждать моральную сторону вопроса, а сугубо техничную. Писать буду на си шарпе, т.к. больше нихуя не знаю. Какие задачи:
1) Перехватывать нажатия всех клавиш - примерно я представляю как сделать.
2) Записывать все в текстовый файлик, отправлять на фтп - тоже знаю как.

Примерно в таком виде, дешевом и сердитом, будет работать? Я ничего не упускаю?

Что нужно еще:
1) Как-то сообщаться с сервером - не знаю как сделать. Хотя когда-то писал на шарпе клиент-сервер какой-то.
2) Обновлять мое приложение тихо - самый сердитый способ который мне видится: проверять есть ли на фтп нужный файл с приставкой new - скачать его, запустить, выйти.
sage #183 #776700
>>776699
Съебал

быстро

решительно
#184 #776711
>>776699
работать будет с загрузкой проца на 50% для процесса (для современных процессоров, возможно, цифра будет поменьше)
а так, пошел нахуй
>>776712>>776737
#185 #776712
>>776699
+ к >>776711

> есть ли на фтп нужный файл с приставкой new - скачать его, запустить, выйти


вспоминаю ебалу, которую мы ну, не совсем, я в разработке этой идеи участия мало принимал в свое время на производстве придумали для обновления клиента. тоже подобное говнище, аж взгрустнулось но ты не забывай идти нахуй, к слову так
25 Кб, 351x306
174 Кб, 1280x1091
Как жить с неполноценными first class functions? #186 #776722
>>766002 (OP)
Жить можно, но как-то грустно.

Может в C# 7.0 добавят :\
>>776724
#187 #776724
>>776722
это же и есть тот самый pattern-matching, так жэж?
#188 #776737
>>776711

>работать будет с загрузкой проца на 50% для процесса


Схуяли, дурачок? Написал уже отправку всех нажатий в текстовый лог, полет нормальный, проц не грузит.
>>776745
#189 #776745
>>776737
как отслеживал нажатия?
82 Кб, 1753x628
#190 #776746


Хе-хе
#191 #777087
Как подсветить пустые поля на формочке по онклику? wpf, это ведь как-то через триггеры делается? как?
>>777581
#192 #777096
>>776766
Само хреновое что делегаты не конвертируются к джерик-делегатам (Func/Action).

Хочется обмазаться функциональщиной (без F#) и приходиться везде таскать крокодилы
Func<string, Func<string, Task<string>>, Action<List<Item>>>

Может они хотя бы алиасы для этого заведут как в котлине.
5 Кб, 375x375
#193 #777369
Анон. Работаю разработчиком где-то между джуном и мидлом. До этого работал админом при команде разработчиков, поэтому некоторые вещи знаю, но где-то есть пробелы. Всю разработку осваивал сам по видеурокам + троэлсон. В общем есть набор книг, в каком порядке читать?
C#_6.0_in_a_Nutshell.pdf
C#_in_depth.pdf
CLR_via_C#.pdf
LINQ_для_профессионалов.pdf
Внедрение_зависимостей_в_.NET.pdf
>>777402
#194 #777402
>>777369
лол, тебе же все надо усвоить, так читай все подряд, че не понятно будет, прочтешь в другой книге из перечисленных или в интернете.
>>777411
2861 Кб, 260x269
#195 #777410
Сап, прогач, оче сильно нужна твоя помощь, как установить коннект к проксе и пересылать через неё ВСЕ in/out, а не какие-то конкретные, на проксе также также стоит логин/пасс. Выручай анон, с меня как обычно
#196 #777411
>>777402
Идея неплохая, канешь, но всё ещё считаю что знание Рихтера переоценено. Не думаю, что кому-то кроме сеньоров это реально пригодится в разработке. А мидлам и C# in depth пойдёт.
#197 #777466
Анон, а почему у меня вижак ругается, что я чё-то там скрываю?
Если кратко, то всё вот так:
abstract class A
{
public static bool q;
}

class B : A
{
public static bool q = true;
}

как мне сделать, чтобы вижак не ругался?
>>777487
#198 #777487
>>777466
1. оставить q только в одном классе
||
2. изменить регистр в одном из случаев
>>777493
#199 #777493
>>777487
Но я хочу сделать один родительский класс, и несколько дочерних, но чтобы в дочерних было одинаковоназывающееся статичное поле.

Можно это как то сделать, кроме варианта объявить в родительском абстрактном, а в дочернем уже в конструкторе задавать значение?
>>777495
#200 #777495
>>777493
статический член класса не может быть абстрактным
>>777500
#201 #777500
>>777495

>Можно это как то сделать, кроме варианта объявить в родительском абстрактном КЛАССЕ, а в дочернем уже в конструкторе задавать значение?

>>777529
#202 #777529
>>777500
СДЕЛАТЬ НАРМАЛЬНА БИЗ ТАКОЙ ВОТ ЕБОЛЫ

зачем тебе вообще такой изврат? чем не устраивают абстрактные члены?
>>777623
#203 #777581
>>777087
Хз, есть IDataErrorInfo, но он говно ебаное.
Я вот не придумал, как подсветить конкретный инпут без введения доп. свойств типа "...HasError" и через дататриггер вешать на инпут с ошибкой эррор темплейт.
У меня всего три инпута на форме и, наверное, именно таким путем я и пойду, хоть мне не нравится идея шести свойств на три инпута.

А вообще, впф ссанина лютое и говно от аутистов. Жаль, что лучше в майкрософтмирке нет.
>>777604
#204 #777604
>>777581
не лучше вместо удвоения количества свойств использовать какой-нибудь комплексный дженерик тип и с него брать статус ошибки/значение?
#205 #777623
>>777529
всё, я понял, спасибо, мне оно не нужно
#206 #777989
Пиздеец, я молча никого не трогая разрабатывал фронтент отдельно, в атоме на ангуляре, с галпом,йоманом, scss и прочими ништяковыми инструментами верстал и манипулировал запросами с няшным $resourse, как тут же недавно поставили задачу, эти бекендщики пересесть на studio professional, где бек и фронт разом выплевывается, какой то блять Razor, какая-то ебанутая система сборки, и заставляют учить это все, аргументируя это тем что нужно будет разрабатывать отчеты, на стимулсофт, я поглядел это вообще какой-то пиздец. Я с# нихуя не знаю. Что делать ананасы?
#207 #777996
>>777989
Уволняйся
#208 #778023
>>777989
Беги оттуда.
#209 #778028
>>777989
Вот так нужно писать! Пиши-пиши-пиши-пиши! Пиши сайт, блядь!

https://www.youtube.com/watch?v=J7aStGi3hE8
#210 #778094
Народ, пришёл к вам спросить, где ж ещё подскажут да поделятся. Отучился в универе не так давно, устроился в небольшую компанию связанную с разработкой систем для менеджмента на с#. Порой были задачи на производственные нужды. Не суть. Вопрос в чём: все, кого я знаю с универа и кто программирует на с# съебались в штаты в банки или работают у нас никем/непоспецухе/планктоном. Меня это заебало, если честно. Можно было бы попробовать уехать и работать в интерпрайзе, связи есть, но ебал я такую жизнь. Стоит бросать прямо сейчас и менять язык/специальность или на c# можно найти что-то интересное? Почему у крестов такой выбор, а шарписты сосут хуи в бизнесе?
>>778100>>783330
#211 #778100
>>778094

> где ж ещё подскажут да поделятся


Выпиливайся петухан.
>>778116
#212 #778116
>>778100
рано, долгов наплодить не успел
#213 #778323
>>777989
Слабо себе представляю как фронтендщик будет лезть в Razor. Razor это инструмент бэкендщика
112 Кб, 580x626
sage #214 #778414
ВСЮ ЖИЗНЬ БУДЕТЕ КЛЕПАТЬ ВЕБПАРТЫ ПОД ШКОНКОПОИНТ, ПЕТУХИ!!!
sage #215 #778630
>>770434
Ну не читай тогда. И так смотрю умный дохуя.
#216 #778631
>>766002 (OP)
Как в юнити изменить шаблонный код новых скриптов на C#? Заебался уже каждый раз одно и то же руками править. Если что, привязка к VS 2015.
>>778652
#217 #778652
>>778631
А погуглить никак?
C:\Program Files\Unity\Editor\Data\Resources\ScriptTemplates
#218 #779373
Посоны, волею судеб мне сейчас приходится учить и кодить на Silverlight. Понятно, технология мёртвая, все дела, но даст ли мне его изучение какой полезный опыт?
>>779383
#219 #779383
>>779373
mvvm же
>>779395
#220 #779395
>>779383
Но это же и применятся только в сильверлайте. ну, в впф ещё.
>>779406>>779664
#221 #779406
>>779395
ну прям-таки только
собственно, это и будет полезный опыт. или тебе не?
в любом случае, в веб-приложении костяк составляет все-таки бекенд. если тебе дали только лайауты и XAML ковырять, то пичаль. если же ты делаешь дела и в BLL, то какая хер разница, на чем писать? разница-то есть, но не суть
#222 #779664
>>779395

> MVVM применяется только в Silverlight и WPF



Ты серьёзно? В большинстве случаев любой сложный интерфейс делают через MVVM. На том же фронтенде для этого используют Knockout и Angular (на реакте честно говоря хуй знает, не трогал его).

Если будешь потом прогать под мобилки, то для шарповского Xamarin.Forms (не советую его использовать, он довольно сырой ещё) тоже как правило используют MVVM либы MVVMLight и MVVMCross.
#223 #779775
Объясните как правильно именовать переменные,функции и прочее в шарпах? ВерблюдСтиль или как то иначе?
>>779778>>780478
#224 #779778
>>779775
зАбОрЧиКоМ)))
>>779912
#225 #779912
>>779778
А _ у прайват членов и т.д.? Названия чего начинаются с большой буквы? Давай подробнее
#226 #779931
Хочу собрать устройство, на мк, с питание от усб компа, как получить время системы, через усб, в пару строк?
>>780983
#227 #780478
>>779775
Все названия пространств имен, классов, интерфейсов, енумов, структур, методов, свойств, публичных полей - PascalCase. Для приватных полей и локаьных переменных - camelCase. Символ _ (underscore) выбрось на помойку и забудь, уродство то еще. Интерфейс должны начинаться с символа I (IEnumerable), при наследовании о класса, в названии нужно сохранять название класса, от которого наследуешь. HomeController : Controller, ImportOperationStatusJsonParser : JsonParser Никогда не используй венгерскую нотацию, новояз и прочие сокращения. Описывая бизнес-логику, названия для переменных, свойств, методов должны исчерпываще описывать, зачем они нужны и что они делают.

То бишь код типа:
var rolesExceptRelatedToUser = await userService.GetRolesExceptRelatedToUser(user); должен вызывать для cисярппрограммизда увлажнение в трусах.
#228 #780481
>>780478
quickfix
точнее даже
var rolesExceptRelatedToUser = await userService.GetRolesExceptRelatedToUserAsync(user);
>>780544
#229 #780519
>>780478
А чем плох underscore? По-моему удобно и всегда видно что поле приватное и не локальная переменная.
>>780545>>780566
#230 #780544
>>780481
А у нас пишут:
userService.GetRolesExceptRelatedTo(user);
Но в целом ты прав, да.
>>780566
#231 #780545
>>780519
Нет в стандарте, значит нинужно.
#232 #780566
>>780519
Потому, что в сишарпе стоит избегать перловщины, язык изначально спроектирован так, чтобы не было кучи спецсимволов. Тебе руби тогда нужен, где есть полный набор из var, @var, $var и _var. Я бы даже сказал, что комментариев вообще-то тоже в сишарпе стоит избегать. Надо использовать либо встроенную документацию, либо писать такой код, чтобы не нужны были комментарии. Иногда бывает набыдлокодишь огромный метод, абы чтобы как-нить работало на скорую руку, а потом еще сидишь с помощью решарпера все это дело по маленьким методам рефакторишь.

>>780544
Если писать из принципа VerbrNoun, VerbNounAsync, то опускание User выглядит, будто тебе букв не хватило.
>>781003
#233 #780720
>>780478

>GetRolesExceptRelatedToUser(user)


У вас абстракция протекла
#234 #780804
>>780478
А протектед поля и переменые? А также протектед и прайват методы как?
>>780817>>780819
16 Кб, 389x376
#235 #780817
>>781003
#236 #780819
>>780804
Приватед поля с маленькой, остальные с большой. Свойства и методы всегда с большой.
#237 #780983
>>779931
Системное время компа передать на мк или время контроллера передать на комп?
>>780985
#238 #780985
>>780983
А в принципе похуй, тут для приема/передачи на комп юзаешь SerialPort и норм. Он с байтами работает, так что выбери какойнибудь протокол для связи мк и пк (модбас например). Но это если чтото серьезное думаешь делать
#239 #781003
>>780817
>>780566
А тут вот с _ прайват поля называются.
И кому из вас верить
>>781015
#242 #781157
дублирую из /web

Котаны, хелп. Есть вот такая страничка- в ней можно загружать изображения и выбирать из списка уже загруженные файлы для показа.
http://pastebin.com/XWXP0jRA

Каким образом можно прикрутить сюда удаление и редактирование имени выбранного изображения?
Пробовал через File.Delete(), чёт ничего не работало.

Написано на asp.net razor v3
#243 #781197
Учился два года в шараге на RAD Studio Delphi 2007. Теперь не могу без визуального проектирования. Что есть на C# подходящего и не громоздкого?
#244 #781203
>>781197
WinForms конечно же. Но лучше отправляйся обратно в 2007.
>>781206
#245 #781204
>>781197
WinForms делал тот же человек, что и Delphi, на 95% они идентичны. Потом переходить на WPF.
>>781207
#246 #781205
>>781197
Ничего сравнимого по удобству с Delphi 7 хотя бы так и не появилось.
#247 #781206
>>781203
С .NET проблемы на делфи. Нужно освоить. Визуальное программирование совсем убого? Мне нужно научиться именно работе с компонентами, если писать на обычном Visual Basic это всё с нуля надо? Или тоже есть уже готовые компоненты?
#248 #781207
>>781204
Делал-то тот же, только "на отъебись".
#249 #781208
>>781206

>С .NET проблемы на делфи


Нет там проблем с .NET уже двано.
>>781210
#250 #781209
>>781206
То же самое, что и на Delphi + резиновая сетка для автоматического выравнивания/изменения размеров.
#251 #781210
>>781208
В шараге стоит Delphi 2007, там проблемы с ним, новый я туда не припру, они весят как скотины и если я без лицензии что нибудь поставлю меня ёбнут. Попробую WinForms.
Что вообще можете сказать, про программирование интерфейсов программ на C#? Или это не особо популярно? Я с трудом могу мозги перестроить после этого ебучего Delphi. Пробовал на Python это делать, с QT горем на полам пытался, ёбнулся, когда события присваивал этому всему.
>>781216
#252 #781211
>>781206
Компоненты некоторые те же самые. FastReports для VCL - FastReports для .NET
Но в Visual Studio все это криво и косо
>>781217
#253 #781216
>>781210

>там проблемы с ним


В чем проблемы?

> Что вообще можете сказать, про программирование интерфейсов программ на C#? Или это не особо популярно?


Популярно. Пишут и страдают, страдают и пишут.
Те кто Delphi не видел, страдают меньше - они не понимают насколько все это может быть проще и удобней.

> Я с трудом могу мозги перестроить после этого ебучего Delphi


Заебись. Ты попробовал клубок qt-говна, убедился в том что это переусложненное кривое говно, а виновата тебе в этом именно Delphi. Заебись.
>>781219>>781225
#254 #781217
>>781211
Мне нужно написать программу родительского контроля. Нужно реализовать базовые функции, типа считывать аккаунты в системе, создавать процесс, который будет следить за активностью пользователя по таймеру. Должно быть общее количество часов и почасовой режим. Ведение журналов действий пока особо не надо. Вся эта хуйня должна пойти на диплом. Сказали посмотреть в сторону .NET, я пока до сих пор не понимаю что именно мне сейчас смотреть, решил для начала поставить это всё. Можете что нибудь посоветовать? Хуй с ним с интерфейсом, что вообще на эту тему почитать можно?
>>781232
#255 #781219
>>781216
В шараге он ебошится при попытке запуска любого приложения на Delphi 2007, лицензия стоит кооперативная, сказали. НУ ВОТ ТАК.
Delphi ни в чём не виновата. Это замечательный язык как по мне, проблема в том, что программа выходит хуй знает какого размера (и я программирую как убогое говно скорее всего) и сейчас все другие языки программирования выглядят как-то ИНАЧЕ. Сложно воспринимать всё, после того как с делфи работал.
#256 #781225
>>781216

> В чем проблемы?


Access Violation при запуске, что же еще. Управление памятью всегда было больной темой в Delphi - и GC нет, и вручную как на C++ распределять нельзя.
#257 #781232
>>781217
не стоит вскрывать эту тему
>>781233
#258 #781233
>>781232
У меня такие же мысли. Но писать надо, второй вариант это йобнутая хуйня с базами данных (от которых уже тошнит) и программой которую я должен сам нафантазировать на произвольную ТОРГОВУЮ ТЕМУ. Ну нахуй.
#259 #781453
>>781155
Имеется_ввиду_не_писать_вот_так_еб_вашу_мать_что_тут_сложного_?
>>787948
58 Кб, 400x300
#260 #781530
Шарпач, у меня встал вопрос. Есть одно приложение-клиент для БД на WPF, которое связывается с бизнес-сервером на другом ПК. В этом приложении много различных окон, вкладок, страниц и прочего. Логику клиента запихал в отдельный класс. Предполагаю, что для связи с сервером буду создавать объект клиента, соединятся, принимать инфу и передавать инфу. И вот тут то вопрос: как сделать так, чтобы объект клиента был только один на всё приложение, и чтобы он был доступен из всех окон, чтобы не приходилось пересоздавать его и прочее. Или придётся для каждого окна делать отдельный экземпляр клиента?
#261 #781575
>>781530
Dependency injection. В composition root в твоем контейнере регистрируешь тип в скоупе синглтона.
>>781586>>781588
#262 #781586
>>781575
>>781530
ну тут вопрос, нужен ли там IoC? почему бы не обойтись просто синглтоном и все. на крайняк периодически убивать экземпляр после продолжительного необращения к нему
>>781588>>781604
#263 #781588
>>781575
>>781586

Пиздец. Я ни одного слова не понял я в wpf со вчера . По подробней нельзя объяснить или я пошёл нахуй в гугл?
>>781859
#264 #781604
>>781586
Зачем поддерживать синглтон самому, когда это за тебя будет делать контейнер?

>>781530
Твои классы зависят в основном от других классов. Твои модели представления, например, скорее всего зависят от интерфейса доступа к данным. Чтобы не выстрелить себе в ногу, как правило такие зависимости передаются классу через конструтор кодом, который вызывает этот класс. Это dependency injection.
У вызывающего кода тоже свои зависимости, и так далее до самого начала. Composition root - это то место, где ты создаешь все свои зависимости и, в идеале, на выходе получаешь один инстанс какого-то одного класса, с которого начинается вся работа.
Чтобы вручную все эти зависимости не пихать есть специальные тулзы - IoC контейнеры.

Судя по всему ты не шаришь, поэтому советую не идти в гугл, а сразу скачать Dependency Injection in .NET и следовать всему, что там написано. В гугле, как правило, примеры по dependency injection полны антипаттернов (в частности сервис локаторы). Не читай все это говно, прочитай лучше книгу и пойми, что там написано. Потом себе спасибо скажешь.

И еще почитай про трехуровневую архитектуру, потому что это

>Логику клиента запихал в отдельный класс.


не хорошо. Каждому окну\странице\вкладке - свой класс с логикой (в разумных пределах, конечно).
>>781615>>781654
#265 #781615
>>781604

> Каждому окну\странице\вкладке - свой класс с логикой


Бред, бизнес-логика вообще не доложна быть привязана к экранам.
>>781621
#266 #781621
>>781615
Кто сказал, что что-то должно быть намертво привязано?
#267 #781654
>>781604
Оох. Яснопонятно, спасибо.

И еще вопрос по WPF. Никто не сталкивался с таким, что когда комбобоксу присваиваешь стиль, то не видно выбранный объект и не видно вводимый текст (если IsEditable==true). Если не использовать стиль, то всё работает как часы. Понятно, что проблема со стилем, но что именно с ним может быть не так? Есть шаблон контрола для toggle button'a, есть шаблон контрола для PopUp и для TextBox, все они используются в шаблоне ComboBox'a. И что самое для меня удивительное, не так давно мне удалось завести это говно, т.е. элементы из раскрываемого списка выбирались и отображались на комбобоксе, но потом, после некоторых действий, никак не связанных со стилем CB, элементы комбобокса снова не отображаются. Комбобоксы привязываются к public observable collection'ам в view model через ItemsSource=
"{Binding Path=ObsColName,...}" ссылка на объект view model объявлена в неймспейсе, сам объект создаётся к конструкторе окна и я тут же присваиваю DataContext'у окна объект ViewModel. Также, у комбобоксов SelectedValue привязано к свойствам-string'ам в том же объекте view model. view model реализует INotifyPropertyChanged. Ну и свойства при изменении вызывают метод PropertyChanged.
>>781656>>781671
#268 #781656
>>781654

>ссылка на объект view model объявлена в неймспейсе



Вру, ссылка объявлена в классе. Самофикс.
#269 #781671
>>781654
ContentPresenter смотри. И/или биндинги в шаблоне.
>>781675
#270 #781675
>>781671
А всё, отбой тревоги. Я ебаклак просто, закомментировал нужный шаблон текстбокса и оставил с таким же наванием пустой.
58 Кб, 451x419
#271 #781727
Я хуй и не пойму какого хуя.
Задачка простая: создать класс который проверяет валидно ли судоку, или его нельзя юзать.
Начал хуячить, создал массив, прохожусь по массиву(чтобы понять сколько на сколько судоку, часть задания) и тут какого то хуя всплывает пикрелейтед из второго GetUpperBound. Я ему мамой клянусь массив двумерный а он не верит. Далее код.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SkillTest
{
class Program
{
static void Main(string[] args)
{
int n;

int[][] goodSudoku1 = {
new int[] {7,8,4, 1,5,9, 3,2,6},
new int[] {5,3,9, 6,7,2, 8,4,1},
new int[] {6,1,2, 4,3,8, 7,5,9},

new int[] {9,2,8, 7,1,5, 4,6,3},
new int[] {3,5,7, 8,4,6, 1,9,2},
new int[] {4,6,1, 9,2,3, 5,8,7},

new int[] {8,7,6, 3,9,4, 2,1,5},
new int[] {2,4,3, 5,6,1, 9,7,8},
new int[] {1,9,5, 2,8,7, 6,3,4}
};

Console.WriteLine("Length of Array: {0,3}", goodSudoku1.Length);
Console.WriteLine("Number of Dimensions: {0,3}", goodSudoku1.Rank);
Console.WriteLine(goodSudoku1.GetUpperBound(0) + 1);
Console.WriteLine(goodSudoku1.GetUpperBound(1) + 1);
Console.ReadLine();
}
}
}
58 Кб, 451x419
#271 #781727
Я хуй и не пойму какого хуя.
Задачка простая: создать класс который проверяет валидно ли судоку, или его нельзя юзать.
Начал хуячить, создал массив, прохожусь по массиву(чтобы понять сколько на сколько судоку, часть задания) и тут какого то хуя всплывает пикрелейтед из второго GetUpperBound. Я ему мамой клянусь массив двумерный а он не верит. Далее код.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace SkillTest
{
class Program
{
static void Main(string[] args)
{
int n;

int[][] goodSudoku1 = {
new int[] {7,8,4, 1,5,9, 3,2,6},
new int[] {5,3,9, 6,7,2, 8,4,1},
new int[] {6,1,2, 4,3,8, 7,5,9},

new int[] {9,2,8, 7,1,5, 4,6,3},
new int[] {3,5,7, 8,4,6, 1,9,2},
new int[] {4,6,1, 9,2,3, 5,8,7},

new int[] {8,7,6, 3,9,4, 2,1,5},
new int[] {2,4,3, 5,6,1, 9,7,8},
new int[] {1,9,5, 2,8,7, 6,3,4}
};

Console.WriteLine("Length of Array: {0,3}", goodSudoku1.Length);
Console.WriteLine("Number of Dimensions: {0,3}", goodSudoku1.Rank);
Console.WriteLine(goodSudoku1.GetUpperBound(0) + 1);
Console.WriteLine(goodSudoku1.GetUpperBound(1) + 1);
Console.ReadLine();
}
}
}
>>781810
#272 #781810
>>781727

> Я ему мамой клянусь массив двумерный


И ты только что проебал, у тебя массив массивов.
>>781814
#273 #781814
>>781810
И как мне посчитать количество элементов массива в массиве?
>>781815
#274 #781815
>>781814
Ну так используй двумерный массив то, либо бери длины внутренних массивов.
>>781817
#275 #781817
>>781815
Двумерный массив низя. Эта херня часть задания. Но спасибо. Я как-то провтыкал что это массив масивов.
#276 #781859
>>781588
почитай про SOLID
>>782001
#277 #782001
>>781859
В каком контексте искать? Гугл про solid snake'a выдаёт результаты.
>>782031>>786069
sage #279 #782139
>>766002 (OP)
обоссал закуток спермаиндусов
>>782149
#280 #782149
>>782139
А ты сам чей будешь, петух?
>>782168
#281 #782168
>>782149
джявапримат-то, не иначе
>>782982
#282 #782724
Аноны, спасайте. Есть WCF Service, который принимает класс сериализованный в json. Обязательно описывать этот класс в сервисе?
Сейчас контракт службы выглядит таким образом
http://pastebin.com/7eN340vP
>>782759
#283 #782759
>>782724
достаточно аннотировать имеющийся класс как [DataContract] а все свойства как [DataMember]
#284 #782898
Хвощ, помогай. Хочу, чтобы по нажатии делался скрин экрана и сохранялся. Я в программировании не шарю вообще, посему моё поделие походит на монстра Франкенштейна, склеенного из решений предложенных интернетом. Вроде всё работает, картинка сохраняется, однако сохраняет картинку в разрешении 1536х864, хотя дисплей 1920х1080. Как эту еботу исправить?
Вот код.
http://pastebin.com/ENnDeT70
>>783544
#285 #782982
>>782168
В свете недавнего релиза .Net Core ему неприятно.
>>782985
#286 #782985
>>782982
На Хабре об этом не писали?
#287 #783198
бандиты, при работе с именоваными трудами (named pipes) нужно ли закрывать NamedPipeServerStream методом .Close() после каждой передачи? Или можно держать их открытыми без потери в производительности и избыточных затрат памяти, только лишь надо вызывать метод .flush() после каждой передачи? Или нужно всё таки держать каналы закрытыми, и открывать непосредственно на передачу?
#288 #783330
>>778094
Лол, был в похожей ситуации. Парниша пиздатый SPA делал, пришел новый начальник, всех собрал и сказал - это что такое? на asp.net mvc razor все должно быть, переучиваться будут все. Почти весь отдел написал заяву в тот же день я тоже
>>783343>>784283
#289 #783343
#290 #783544
>>782898
Бумп вопросу
>>783567
#291 #783567
>>783544
Ты там в виртуалке штоле запускаешь? Все нормально с кодом.
>>783672
#292 #783672
>>783567
Тогда, видимо, проблема не в коде, а дисплее или около того. KMP когда на весь экран фильм разворачиваю тож пишет разрешение 1536х864. А виндовоз грит что фуллхд. Странно всё это.
#293 #784139
dotnet -v run
Telemetry is: Enabled
Project test (.NETCoreApp,Version=v1.0) was previously compiled. Skipping compilation.

> Telemetry is: Enabled


> Telemetry is: Enabled


> Telemetry is: Enabled



Спасибо, Майкрософт!
#294 #784283
>>783330
а у нас все наоборот. Хуяк и одномоментно все учим нокаут и иже с ним
228 Кб, 628x458
#295 #784538
Собственно пытался установить coreCLR на распери пи 2, но соснул большого ARM-овского хуйца. Раньше когда был dnvm можно было поставить mono-вскую dnx для arm, а сейчас хуйс. Никто не в курсе они это чинить будут?
>>784615>>784665
#296 #784615
>>784538
Под windows iot пускаешь?
>>784649
#297 #784649
>>784615
да это ущербо-ось пока что. Под Rasspbian(Debian) запускаю.
#298 #784665
>>784538
Начиная с RC2 моно больше не поддерживается (и не будет).
https://github.com/dotnet/cli/issues/2576#issuecomment-211625062
>>784671
#299 #784671
>>784665
Ну пускай тогда под ARM x86 мне дотнет запилют, суки. Не покупать же ради этого RPi 3.
>>784682
#300 #784682
>>784671

> ARM x86


WHAT?
>>784702
#301 #784702
>>784682
Да, хуйню пизданул. Кароч надо под арм линукс
#302 #785042
>>766002 (OP)
Объясните мне что происходит? Работаю в одной софтварной конторе asp.net кодером и примерно с 15 года началась тенденция, что даже самые стабильные заказчики все чаще говорят "не хотим windows server - хотим gnu/linux", хотя раньше их все устраивало. И позиция у них все жестче и жесче "винда на сервере, вы что смеетесь". У нас уже создали целый отдел под node.js/angular, что дальше?
>>785085>>785115
#303 #785085
>>785042
.net core?
>>785095
#304 #785095
>>785085
Двачую, сам давно перепрыгнул и теперь плачу копейки за мощьный VPS на Ubuntu
(и никакой отдельной платы за лицензию на windows).
Плюс docker контейнеры нормальные и человеческий SSH.
>>785107
#305 #785107
>>785095
И кому ты это продаёшь?
>>785139
80 Кб, 731x960
#306 #785112
"I've got a talk on .NET Core in 2 weeks. I think I'll just get up on stage and cry for 50 minutes"
Поясните, почему все так кипишат из-за каких-то проблем с релиз-кандидатами? Какой даун вообще пишет продакшн код на нерелизнутой платформе?
>>785117
30 Кб, 800x432
#307 #785115
>>785042
Я сам был виндоблядком до некоторых пор. Недавно увлёкся изучением линукса. Теперь я понимаю что сервера на линукс это лучший выбор. Ты представь что на твоём серваке можно поставть ровно столько софта/либ/и рантаймов сколько тебе нужно для работы. Там не будет ВООБЩЕ ничего лишенего.
Windows server же это огромная свалка борохла, а при этом нужен он тебе только для того чтобы сайтец хостить в IIS (сферический пример, но тем не менее такое может быть). Огромное количество ресурсов машины тратится на хуй пойми что. Ставятся обновления компонентов которые ты вообще не используешь(да и ещё эти обновления могут поломать к хуям то что ты, как раз таки, используешь). Подняты службы которые тебе не в хуй не впёрлись на этой машине(общие папки, обозреватель сети, служба печати и проч.)
По сути правильно собраный линукс для тебя это ядро ос + твоя рабочая нагрузка + либы которые нужны для твоего софта. Я уже не говорю о скорости поднятия машины. Если у тебя распредёлённая система с динамически поднимаемыми вм это вообще шик. В Azure развёртывание дополнительного инсанса в Azure services занимает минут 10, это пиздец ящитаю.
>>785133>>785228
#308 #785117
>>785112
Мы начали писать, но проект не находится в активных продажах сейчас. Был опыт продажи проектов FMCG компаниям. Они ахуевали от стоимость SQL того-же самого + win server. Так что новый продукт решили пилить на .netcore + postgresql.
#309 #785133
>>785115
>>785117
Кстати досихпор не знаю, какое серверное ПО стоит за азурой? Фермы из виндовс серверов?
Я не то чтобы в тренде дохуя, Но азура+katana+azure sql выглядит оче годно для меня.
>>785134>>785199
#310 #785134
>>785133

>katana


Хуйню сказал, owin естественно. Никакой ебли с IIS. Для селфхостед уже катана, ога, тоже мегагодная штука.
>>786665
#311 #785139
>>785107
Никому :) , это бэкенд для моих же мобильных приложений (которые тоже open-source).

Именно по этому мне нужны экономные решения и никто не ограничивает меня legacy-технологиями.
#312 #785199
>>785133
Там есть большое количество служб. Можно просто виртуалку развернуть и будет тебе обычные дэдик. Есть Azure Services, которая умеет в автоматическое горизонтальное масштабирование, которое легко настраивается.
Так же есть Web app это типа shared хостинга у обычных провайдеров. Ты просто по FTP закидываешь сайт и оно работает. Есть бесплатный план обслуживания(как раз таки shared, без гарантий по производительности и невозможно привязать свой домен. По умолчанию даётся твой_сайт.azurewebsites.com).
SQL Azure это по сути MS SQL без администрирования самого сервера. Создаёшь типа виртуальный сервер, создаёшь в нём сколько тебе надо бд, берешь коннекшн-стринги и работаешь. Всё делается через гую без мозгаёбства минут за 15.
Кстати для SQL тоже есть какие-то бесплатные лимиты.
>>785202
#313 #785202
>>785199
Собственно в используя azure webapps
https://azure.microsoft.com/ru-ru/services/app-service/web/
Тебе твой оуин вообще не нужен.
#314 #785228
>>785115
На чем теперь кодишь (платформы, языки)?
>>785241
#315 #785231
>>785117
А зачем неткор, почему не джанго или нода?
>>785244
#316 #785241
>>785228
Ну на работе у меня классический asp mvc стэк. Coreclr и линукс это я по фану дома ковыряю. Понравилась мне вся эта история с тех пор как диплом написал на распбери пи debian +coreclr + sqlite
#317 #785244
>>785231
Потому что команда состоявшихся высококвалифицированных дотнетчиков. Тратить деньги на переобучение никто не хочет, да и смысла особо нет. Дешевле подправлять пока стейбл не выкатят.
>>785750
#318 #785567
Итак, решёточники, у меня проблема.
Есть один курсач, на шарпе, ибо мы не ищем лёгких путей и учим основы языка за 2 дня: http://pastebin.com/uHtfhTDY
Итак, имеется явная проблема со считыванием. Мне кажется, или код, вместо того, чтобы взять двойку из таблицы, видит там набор умлаутов из "Mein Kampf"? Иначе я не могу объяснить вот это:
[CODE]Необработанное исключение типа "System.FormatException" в mscorlib.dll

Дополнительные сведения: Входная строка имела неверный формат.[/CODE]
>>785625>>787173
#319 #785589
>>785117

>FMCG компаниям. Они ахуевали от стоимость SQL того-же самого + win server.


FMCG-компаниями ты продуктовый магазин дяди Ашота штоле называешь?
Дешевое пека-железо, дешевые шарпо-студенты, дешевый вин-сервер. Единственное что дорогое может быть это MS SQL Server, но только со всеми энтерпрайзными свистелками - да, тогда он уже почти как серьезные СУБД начинает стоить. Но вашему продукту они зачем, свистелки эти все?
#320 #785625
>>785567

> Мне кажется


В этом и проблема, возьми да посмотри, что там на самом деле
#321 #785750
>>785244

>команда состоявшихся


>нетькорэ


А что вы там пишите? Там же пока сырое все

Все шарящие сейчас на node/angular ушли жи
>>785764
#322 #785764
>>785750
такое впечатление, что фундамент платформы кардинально изменится/изменяются с выходом Core
#323 #785777
Добрый день.

У меня есть дерево классов, в нем некоторые дети перегружают методы некоторых родителей, но аргументы остаются те же.

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

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

Пытался понять как сделать через дженерики - и не понял.

Помогите пожалуйста, с меня два спасибо.
>>785789
#324 #785789
>>785777

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


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

кроче, надо юзать виртуальные методы
>>785799
#325 #785799
>>785789
Спасибо тебе, большое спасибо. Всё встало на места.
Правда, теперь я не понимаю - отчего вообще возникла необходимость явно указывать перезапись, интуитивно это кажется наиболее верным поведением (мне).
>>785802
#326 #785802
>>785799
тогда, имея два и больше варианта поведения, как определять, какой тебе нужен в данный момент?
#327 #785966
Шарписты, есть массив некого основного класса Item, от Item наследуются Item1, Item2,...,ItemN. В Item есть несколько параметров, а ItemN добавляют некоторые свои параметры. Как мне заполнить этот массив из файла? Сериализация через XML работает только для одного класса, а не для класса с потомками
>>785970
67 Кб, 640x640
#329 #785974
>>785970
Благодарю
#330 #785986
>>768864
Каждый раз проигрываю с тех, кто умудряется получить ВО, но при этом не получить опыт работы. Вы как так делаете?
#331 #786015
>>785986
Учиться же надо, ты што, некогда работать!
#333 #786396
тред не читал, куда пойти работать в дс2?
опыта чуть больше года, знаю mvc, ef, tsql, немного фронтенда(angular, knockout). хочу чтобы побольше бэкенда было.
>>786397
#334 #786397
>>786396
макдак. первое время сплошной бэкенд, потом с повышением все больше работы во фронте
#335 #786414
Что жиьать к вас для веб-разработки?
#336 #786549
Халп! Есть 2 библиотеки - одна просто с классами, другая - библиотека UserControl'ов для WPF. Так уж вышло, что мне нужно связать эти 2 библиотеки друг с другом. если в краце - в dll с UserControl сделано окно для "тостерных" оповещений, а в dll с классами планируется сделать вызовы этих окон в одном WPF-проекте (не библиотеке) Но что то пошло не так и... во первых, при добавлении референса в другие проекты на библиотеку с классами, видна не последняя версия библиотеки, а старая, примерно недельной давности, там нету большей части того, что я дописал за последнюю неделю. Rebuild проекта не дал каких либо результатов. И ещё, в библиотеке с классами, несмотря на добавленный референс на библиотеку UserControl'ов, не распознаётся namespace из той самой UC-библиотеки, где и лежит класс с окном для оповещения. ШТОДЕЛАТЬ?
>>786556>>786576
#337 #786550
Вкатился в разработку всяких дополнений и макросов к CAD системам, сам то я инженер-конструктор. Кодю на шарпе.
Что посоветуете интересного?
#338 #786556
>>786549
добавлял референс каким образом? не через Browse, надеюсь?
>>786557
#339 #786557
>>786556
Кхе. Именно через него. А как по другому? Просто .dll пихать в папку?
>>786558
#340 #786558
>>786557
проект dll-а с классами в SolutionExplorer -> References (ПКМ) -> Add reference -> Projects -> ищешь свой проект с UserControl -> отмечаешь галку -> OK
>>786562
#341 #786562
>>786558

>ищешь свой проект с UserControl


вот это же через browse делается? а то у меня список solution'ов пустой. И ещё, добавлять нужно файл .dll, .sln или .csproj?
>>786564
#342 #786564
>>786562
у тебя физически проекты двух библиотек находятся по разным солюшнам?
>>786565
#343 #786565
>>786567
#344 #786567
>>786565
ну тут нормальным вариантом будет добавить post build event для проекта с контролом - копировать dll и pdb соответствующей библиотеки и всех зависимых частей куда-то в папку скомпилированных библиотек, а для другого проекта - добавить референс на длл из той папки. после ребилда у тебя будет гарантия, что ты используешь всегда актуальную версию

подозреваю, частично механизм у тебя именно так и работает, но тут, скорее всего, проблема в том, что источник библиотеки не обновляется по какой-то причине
#345 #786576
Решил короче одну свою проблему из >>786549
Оказалось, в одном из namespace'ов библиотеки с классами были ошибки, которые при сборке почему то не показывались. Сейчас осталась вторая проблема - добавляю в библиотеку с классами reference на библиотеку WPF-UserControl'ов с окном, и при использовании namespace'a с окном, VS2013 выдаёт ошибку, что типа "тип или пространство имён %имя пространства имён% не может быть найдено. может вы забыли референс?" При этом, namespace из той же библиотеки нормально видится той же студией в другом WPF-проекте - не библиотеке. ШТОДЕЛАТЬ
>>786594
#346 #786594
>>786576
Всё, решил проблему. У библиотеки WPF UserControl целевая версия .net framework была выше, чем у библиотеки с классами
#347 #786665
>>785134
Катана это имплементация OWIN спеки, там по сути обычный http listener. Не вижу в ней смысла сейчас, когда core релизнулся.
Kestrel из .net core в этом плане на порядок производительнее и дает пососать и ноде и goвну.
>>786695
#348 #786695
>>786665
Зачем Кестлеру прокси сервер? Для SPA можно обойтись одним Кестлером?
>>786706
#349 #786706
>>786695
Можно конечно, но в продакшн лучше все равно проксировать через Nginx. Да и по раздаче статики он лучший вариант.
#350 #786953
Анон, в чем преимущество NUnit перед дефолтным MS Unit?
>>787025>>787188
#351 #787025
>>786953
по сути, никакого

http://stackoverflow.com/a/1554058
только для первого и последнего пункта по ссылке мне нечего сказать, т.к. не сталкивался. остальное - какая-то хуита
>>787188
#352 #787062
Продублирую вопрос из Java-треда

Что почитать про энтерпрайзное архитектуренье в .NET-экосистеме?
Что вместо JPA, что вместо JMS, что вместо JTA?
Распределенные транзакции, очереди, вотэтовсё.

ASP.NET и другие вебодела неинтересны, для веб-недобэкенда есть Node с хипстерами за миску пиццы.
>>787251>>787337
#353 #787173
>>785567

>Есть один курсач


Нахуй иди.
#354 #787188
>>787025
Ну последняя хуйня довольно полезная, когда нужно конструктор потестить на проверку аргументов, или аргументы правильно расчитываются.
>>786953
У NUnit с третьей версии есть большой недостаток - не работает их GUI Runner и приходится запускать тесты плагином для студии, который ну очень сильно тормозит
#355 #787251
>>787062
EntityFramework, NHibernate.
>>787267
262 Кб, 656x861
58 Кб, 656x248
#356 #787267
>>787251

> EntityFramework NHibernate


Это ORM с примочками, я не о том спрашивал.

Картинка удручает
>>787277
#357 #787277
>>787267
WCF, WWF - начни с этого
>>787286
#358 #787281
>>785986
Из тех, кто работал в нашей группе, никто не закончил универ.
#359 #787286
>>787277
WCF - это обертка над MSMQ и MSDTC со свистелками?
#360 #787337
>>787062

>недобэк


Для этой вашей .Net Core есть какая нибудь ModbusLib или ничего еще .Нет?
для ноды есть например
#361 #787366
Я как нибудь могу использовать js код на определённой странице из бэкэнда? Те есть сайт, допустим вк. Я могу запустить на нём определённый js, и залогиниться на нём?
>>787368
#362 #787368
>>787366
Конечно можешь, но срать то можно и не снимая свитера.
>>787369
#363 #787369
>>787368
Иронию уловил, а какой нибудь ссылочка можешь подкинуть?
>>787382
#364 #787382
>>787369
Ты задачу то бы описал сначала? На примере вк - документашка вк может тебе и логиниться не надо будет
Если все же хочется поиграть в жс - можешь посмотреть в сторону phantomjs, или anglesharp, который тоже умеет в выполнение скриптов.
#365 #787813
>>785986
Нужно было помогать в бизнесе родителям, постоянно работал у них, по специальности опыта не получил
#366 #787825

>Кокок подчёркивания не нужны.


В то же время в доке аспнета все примеры их используют.
#367 #787948
#368 #787984
>>787825
разве?
#369 #788211
>>787825
Leading underscore и snake_case не одно и то же.
42 Кб, 693x450
#370 #788255
Шарпач, я знаю, тут седят боги программирования, я бы мог спросить в других ветках, суть одна - байтоебствою в ветке шарпа народ кажется более УМНЕЕ. Что хотят здесь от меня? я не могу разобраться.
1) Почему пишут "Для автоматического определения адреса одиночного прибора допустимо использовать команду запроса версии с широковещательным адресом 54535251"
Но в мониторе видно что порядок вообще обратный, а именно надо посылать в таком порядке:
byte[] broadcastInvoke = { 0x51, 0x52, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x4A };
Почему в обратном порядке отправлено первые 4 байта?
Эту строку я скопипастил из монитора и сделал массив, тестировал соединение
2)L-3, L-2,L-1 это длина в байтах? Вот есть команда 14 (запрос заголовка архива с устройства). Адрес устройства я получил, команда 14, параметры команды 01. Заполняю: 35 51 00 00 15 01 XX XX XX XX XX XX XX XX XX XX - что в этих иксах писать? Я могу посмотреть монитор опять, но я не пойму суть.
2) Поясни за контрольные суммы по модулю 2 и 256 - как их генерить? Я понимаю что это XOR, но что складывать и как выводить в сообщение? Какой порядок? опять обратный или нет?

Шарпач, помоги!
#371 #788261
>>788255
Там же написано, что младший байт передается первым, про endianness прочитай уже. Попробуй нулями заполнить, а лучше посмотри что на самом деле отправляется. По модулю 2 - бит четности, 256 - байтики складываешь не обращая внимание на переполнение
>>788267
#372 #788263
>>788255
Что сделать то надо?
>>788267
#373 #788267
>>788261
Что значит байтики складываешь? Я только ООП выучил более-менее, а булеву алгебру только в школе проходили.
Как бит четности найти, что тут нужно складывать, можешь привести пример, раз уж тащишь. Тебе это явно не составит труда, няша.

>>788263
Опросить теплосчетчик и расшифровать входящие данные.
>>788325
#374 #788325
>>788267
Значит запись в мониторе идет в обратную сторону; чтобы понять как работать с 14 командой нам нужно ее видеть, вот пример с 0:
FF FF FF FF /АДРЕС/ 00 /КОМАНДА/ 00 00 00 00 00 00 00 00 00 /ДАННЫЕ/ FF FF /CRC/
Так как параметры явно не указаны, значит можно заполнять нулями, если в другом месте описания протокола не написано обратное.
>>788373
#375 #788330
>>788255

>Но в мониторе видно что порядок вообще обратный


>Младший байт адреса передается первым


>передается первым


>первым


Совсем пиздоглазый?
#376 #788373
>>788325
Я разобрался, спасибо. CRC победить не могу.
XOR же это оператор ^
Складываю в калькуляторе - ок! получается 0x35^0x51^0x02 = 0x66
Складываю в коде - пися, получается 0х18
ЧОМУ!?!?!
#377 #788874
Господа, где можно найти FAQ по установке .NET Core на линукс не из списка дистров, указанных в dotnet-репо? Допустим, пропатчил я скрипты - оно собирает практически всё, но при попытке собрать mscorlib.dll начинает качать какую-то невнятную хуйню, пытаясь угадать название моего дистра. Зачем? Я же вроде как из сорцов собираю.
>>789062
#378 #789062
>>788874

> Зачем? Я же вроде как из сорцов собираю.


Зачем ты это делаешь, вообще делаешь?
>>789295
#379 #789295
>>789062
Потому что для нужного мне дистра нет готового решения, очевидно же. Частично ответы нашёл тут:
https://github.com/dotnet/coreclr/blob/master/Documentation/building/freebsd-instructions.md
Но вообще MS здесь подобосрались маленько, в линуксе ведь как принято - указываются зависимости, а дальше оно должно собираться почти без танцев с бубном на любом дистре. В данном случае всё иначе.
Ладно, похуй, придётся дебиан накатывать.
>>789299
#380 #789299
>>789295
99% луноходов сидит на убунте.
>>789729
13 Кб, 400x481
#381 #789721
Здраститя. Можно ли из одного воида вызвать другой воид?

private void Che_nebud(object sender, EventArgs e)
{
...
}

private void Question_TextChanged(object sender, KeyEventArgs e)
{
return Che_nebud();
}


Или объединить как-нибудь EventArgs и KeyEventArgs? Вообще я хочу чтобы функция срабатывала при нажатии на кнопку "Ввод" и enter на клаве.
>>789734
#382 #789729
>>789299
Только сервера на сентос.
>>789731
#383 #789731
>>789729
Главное что бы там docker работал, с CoreCLR остальное пох.
>>789816
#384 #789734
>>789721

> Можно ли из одного воида вызвать другой воид?


Конечно, только надо сначала результат Che_nebud() присвоить во временную переменную и ее уже потом возраращать.
>>789740
#385 #789740
>>789734
Как это сделать? Допустим есть куча функций после обработки которых в конце вызывается эта самая Che_nebud()
>>789949
#386 #789816
>>789731

>docker


Иногда лучше прямо на хосте это всё запускать, безо всяких докеров.
>>789945>>790313
#387 #789945
>>789816
А иногда лучше иметь контейнер, который
- может развернуть за минуты на любой машине
- можно запускать несколько экземпляров не заботясь о конфликтах
- можно перемещать с машины на машину вместе с настроенным окружением
- можно иметь базовый настроенный контейнер и наследоваться от него
- можно централизованно обновлять инкриментно все контейнеры через hub
>>790951
#388 #789949
>>789740
Если ты из void хочешь вызвать void, то return не надо. Иначе необходимо вызывать все, что ты там хочешь внутри, приводить к возвращаемому типу данного метода и вертать
15 Кб, 400x433
#389 #790229
Как лучше хранить иконки для отображения информации( флаг страны, погота, и т.д.) на асп нет? Жду мудрых советов
>>790237
#390 #790237
>>790229
В папке images
#391 #790280
Посоны, есть мануалы как делать базу данных, таблицы и записывать туда данные на VS2012 + MS SQL, раньше делал VS2010+MS SQL CE, но на 2012 нету больше CE, где почитать про это?
>>790283
#392 #790283
>>790280
Entity Framework, LINQ-to-SQL
#393 #790313
>>789816
На практике удобнее держать core os на хосте + контейнеры.
>>790951
#394 #790589
Господа шарпы, подскажите плез различия между
Action callback;

1) callback();
2) callback.Invoke();
>>790605
#395 #790605
>>790589
Нету их это одно и тоже.
Только во втором случае ты можешь еще написать callback?.Invoke(); для избежание NPE

P.S.
Ну почему блин до сих пор не сделали callback?(); ?
>>790625>>790954
#396 #790625
>>790605
Чтобы жопа от сахара не слиплась.
#397 #790951
>>789945
>>790313
Может через месяц-три будет удобнее, да. Там как раз тонну патчей напишут. Сейчас можно регулярно ловить сегфолты даже в типа "официальных" контейнерах.
#398 #790954
>>790605
Потому что ещё не вышел C# 7/
407 Кб, 596x604
ку всем, залетыш из /gd #399 #791144
Ануний, подскажи зеленому как правильно реализовать поведение кораблей в космосе (2d-рейнджеро-подобная игрушка на unity). Есть к примеру торговец и пират, нужно чтоб они вели себя подобающе. Что мне делать? Добавлять каждому объекту функцию Behavior(), само собой у разных типов своя реализация, и вызывать эту функцию каждый апдейт движка у всех существующих кораблей? Просто другого в голову ничего не пришло, не обижайте.
>>791150
#400 #791150
>>791144
Если что сцена пустая, вся логика пока абстрактная, это же так называется?
#401 #791190
Сисы, на Core уже стоит перекатываться? Что-то у них Иссуесов много на Гитхабе.
22 Кб, 685x514
#402 #791205
>>791190
Конечно, берешь свой проект 2010 года под Windows с COM, WCF, C# 3.5, ASP.NET 2, EF 3
и переносишь на линкус.
#403 #791206
>>791190
почему нет? в продакшн, конечно, отправлять на свой страх, но знаю две конторки, клепающие на коре коммерческий шлак
#404 #791368
>>791190
В принципе уже можно. Проблемы есть, но они как правило связаны с какой-нибудь экзотикой - достаточно те самые ишьюсы почитать. Пока что самый главный минус - это местами довольно сильное отличие master на гитхабе от того, что есть в готовых бинарниках, поэтому может потребоваться самостоятельная сборка Core + CoreFX + CLI, чтобы какой-нибудь срочный баг пофиксить. На debian stable с этим проблем нет, например.
Ну и делать что-то mono уже как-то не камильфо, там как не работали многие вещи, так до сих пор и не работают. Плюс вспомогательные компоненты mono типа xsp не обновлялись уже чёрти сколько, поэтому их тоже приходится отдельно собирать с патчами.
Я вот недавно решал, на чём буду писать новый прожект под линукс, хотел уже C# дропнуть и делать всё на nodejs, но релиз Core несколько исправил ситуацию.
>>791620
#405 #791405
Посоны, как быть, если мне надо в базе данных(localdb v11.0) в таблице хранить не более 86400 записей, при достижении 86400, нужно старые перезаписывать? Если заранее делать пустую базу с 86400 строк, то через Update запись сразу в 4 таблицы делается долго( по 150мс в каждую таблицу).

Если через Insert, то это удалять 1 строчку каждый раз при достижении максимального, но как она удаляется, первый столбец ключевой типа int нумерация сбивается, в итоге через пару дней работы там уже будут нихуевы значения, первая строчка уже под номером 170 тысяч, вместо 1.
>>791431
#406 #791431
>>791405

>Update запись сразу в 4 таблицы делается долго( по 150мс в каждую таблицу)



Чё-то дохуя, хотя смотря что ты там хранишь, конечно. Юзай Dapper или SqlCommand.
>>791436
#407 #791436
>>791431
Ну у меня по сути вся проблема в том, что я когда удаляю первую строку, у меня удаляется вся строка и соответственно там ключевой столбец "N" была строка с номером один, удалил ее, теперь первая сторка с номером 2 и т.д. Мне то в принципе поебать что там в этом ключевом столбце, он мне вообще нахуй не нужен, но я боюсь, что там когда-нибудь выйдет за диапазон INT и будет эксепшн выдавать или что-то вроде того
>>791461
#408 #791461
>>791436
Убери индекс если тебе он не нужен.
>>791473
6 Кб, 743x82
#409 #791473
>>791461
Убрал, теперь наслаждаюсь ошибкой.
>>791490
#410 #791480
Я просто не пойму, если я удаляю строки из таблицы в базе данных SQL, то первичный ключ тоже удаляется и нихуя не обновляется, в итоге он просто идет вразброс, 15,21,23,24,25,27. Нельзя его обновить как-то, чтобы он снова шел с 1?
>>791489>>791495
#412 #791490
>>791473
А, у тебя EF.
#413 #791495
>>791480
Смирись уже, это стандартный подход любой БД или делай как >>791489 говорит, только не на всякой базе это есть.

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

У тебя какая-то логика работы приложения неправильная, раз зависишь от его конкретных значений.
>>791506
#414 #791497
Аноны, зелёный вопрос по парсингу с CsQuery.
Есть страница, которая выдаёт n первых результатов в виде ul-списка, а затем подгружает остальные по мере прокрутки страницы вниз. Проще говоря, принцип отображения схож с лентой новостей вк, только на обрабатываемом ресурсе есть пределы, до которых страница "растёт вниз" (присутствует счётчик страниц, например, Page 1 of 150). Навигация по страницам также присутствует.
Когда я создаю CQ DOM объект с содержимым по требуемому запросу, то получаю код как раз тех самых первых n результатов - то есть, всё то, что поместилось на страницу 1. Есть ли какой-то хитрый способ, чтобы без особого геморроя получить код всех страниц по одному запросу в один объект? Или нужно сперва получить количество результирующих страниц, а потом в цикле пробегать их все, каждый раз создавать новый DOM объект и парсить по-отдельности? Вариант сомнительный, т.к. каждая страница и так парсится не особо быстро - в пределах 1.5-2 секунд, а если страниц 5-10 тысяч?
40 Кб, 743x334
#415 #791506
>>791495
Ну может логика неправильная я не знаю, подскажите что ли.

Вот у меня есть необходимость каждую секунду записывать показания с датчиков, нужно чтобы эта информация хранилась 24 часа(86400 секунд). Старые значения не нужны.

Датчиков у меня 30 штук.

Получается делаю базу данных, в ней таблицу с полями N(PK),Time,Датчик1, Датчик2, ДатчикN...

Каждую секунду делаю db.Table.Add(entry) в итоге у меня каждую секунду добавляется новая строка в таблицу, так пока количество строк не станет 86400, теперь мне больше строк не надо, какой выход? Удалять первую строку и вставлять новую, так у меня всегда будет 86400.

Как это лучше сделать?
#416 #791510
>>791506
поставь сторонний джоб, который каждый час будет удалять все записи, не входящие в топ-86400 по времени
>>791514
#417 #791511
>>791506
Партицирование, узнай о нем.
>>791514
#418 #791514
>>791510

>джоб


?

>удалять все записи


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

>>791511

>Партицирование


Сейчас погуглю
>>791520
#419 #791520
>>791514
ну какой-нибудь сторонний скрипт, запускающийся по интервалу
первичный ключ будет инкрементироваться, как и любой другой первичный ключ
#420 #791522
>>791506
А где в этой схеме работает AIK ?
>>791527
#421 #791527
>>791522

>AIK


Автоинкремент? Ну я все это делаю через Entity framework создал таблицу - первичный ключ int и он сам стал автоинкрементом, нельзя убрать с него автоинкремент([N] INT NOT NULL PRIMARY KEY,) вот и весь его код. А без Primary key - ошибка.
>>791535>>791537
#422 #791535
>>791527
Туплю, вроде можно без автоинкремента, самому вставлять значения в N.
#423 #791537
>>791527
Блин да сделай ты из него long, этого тебе хватит на 1000 лет
>>791551
#424 #791551
>>791537
long хватит всего на 68 лет, если не брать отрицательные, а вот bigint хватит до конца времен.
#425 #791566
Двач, подскажи начинающей студентоте, у нас С# будет идти только в рамках винформочек, но я так понимаю это совсем неактуально, сейчас есть знания ООП, структур данных, доучиваю события и делегаты, куда двигаться дальше? ASP.NET и СУБД? И насколько необходимо хорошо знать HTML/CSS/JS? Такой объем информации тяжело потянуть в оставшиеся 2 года.
#426 #791620
>>791368

>но релиз Core несколько исправил ситуацию


Я вот хочу запилить веб-сервер для игры и думаю использовать новый asp.net core. Выглядит он круто, гораздо лучше старого asp. И вроде как работает быстрее, но чёрт знает. Не хотелось бы потом ловить баги. Хотя сервер простенький.
>>791661
#427 #791661
>>791620
Что-ты сомневаешься: ASP NET Core уже вышел стабильной версии 1.0, EF Core тоже.

Сам .NET core конечно еще версии "preview 2", ну так НЕ бери всякие извращенные линкусы.
Возьми Ubuntu или Debian для сервера, на них все отлажено и стабильно (а лучше официальный докер).
>>791682>>791859
#428 #791682
>>791661
Вообще то вышел уже.
>>791690
#429 #791686
>>791566

> И насколько необходимо хорошо знать HTML/CSS/JS? .


Очень необходимо.
#430 #791690
>>791682

>Вообще то вышел уже.


Кто?
У .NET Core последняя версия 1.0.0-preview2-003121

У тебя где-то есть стабильная?
>>791695
#431 #791692
>>791506
Хранимая процедура. В принципе можно и в коде обработать.
#432 #791695
>>791690
Мне вроде сказали, что вышла rtm
#433 #791754
Ребята, подскажите как парсить json вот такой например http://pinterestapi.co.uk/spb/pins там в элементах массива attrib либо объект либо false. Я использую либу от newtopsoft. делаю так
RootObject rootObject = JsonConvert.DeserializeObject<RootObject>(jsonResponse);

в rootObject все остальные объект. Поле attrib типа object. при десериализации поле attrib имеет либо тип object(bool), либо object(Newtonsoft.Json.Linq.JObject). А можно сделать так что бы оно сразу приводилось либо к bool либо к моему типу Attrib? Подскажите годных статей как парсить такие json?
>>791834
#434 #791834
>>791754
Пиши кастомный конвертер. Вот пример из доков Newtonsoft:
http://www.newtonsoft.com/json/help/html/CustomJsonConverter.htm
Дальше гугли уже самостоятельно, на SO было несколько тредов на эту тему. Только учти, что они несколько староваты, с тех пор интерефейсы малость поменялись.
#435 #791859
>>791661

>Возьми Ubuntu или Debian для сервера, на них все отлажено и стабильно (а лучше официальный докер).



Иногда с MS можно проигрывать бесконечно. Убрали из зависимостей mono, зато теперь mscrolib.dll только по ссылке под конкретный дистр. Обещают вроде пофиксить это дело. Вот тогда заживём, да. Можно будет не привязываться к обоссаным ubuntu/debian алсо проиграл от версии nodejs в debian stable.
#436 #791943
>>791566
Unity3d.
#437 #791951
>>791566
На самом деле вполне можно найти работу, где будешь иметь дело с винформами, но это конечно менее перспективное направление.
#438 #792041
>>766002 (OP)

Пиздец. В релизе третьего апдейта пиарили оптимизацию памяти в студии как главную фичу. После установки студия стала жрать почти в два раза больше. Дебилы бля.
>>792144
#439 #792057
Храню в веб конф сторуку запроса к апи с вскавкой значения (типа "bla@{0}amp;")
Беру переменною строки в код и как мне вставить значение в {0}
>>792059
#440 #792059
>>792057
Докумекал сам
#441 #792144
>>792041
можэ решарперский или еще какие-нибудь говноаддоны? бывшие тиммейты тоже после апдейтов ругались на подобную ебень, но источником проблемы была во всех случаях точно не ВС
>>792289
#442 #792253
Что сейчас использовать, если я хочу отрисовывать картинки на винформах через OpenGL?
>>792341
#443 #792289
>>792144

Так решарпер до апдейта тоже был, поменялась только студия.
#444 #792341
>>792253
Ничего.
>>792364>>793180
#445 #792361
ASP.net web
или
Xamarin

Что лучше, господа диванные макаки
>>792378>>792388
#446 #792364
>>792341
Но как мне тогда отрисовывать картинки?
GDI+ слишком медленный.
#447 #792378
>>792361
Гейшлюхой конечно - лежишь ничего не делаешь, а денюжки капают
>>792386
#448 #792386
>>792378
В /б/ пиздуй
#449 #792388
>>792361
Xamarin, рынок мобильных растёт год от года.
>>792409
#450 #792409
>>792388

Растет то он растет, только мимо этого говна.
>>792441
43 Кб, 620x620
#451 #792435
Йоп. Недавно закончил шарагу и как-то поздно определился с каким языком вкатываться в работу на дядю. Сейчас жестко задрачиваю Шилдта и параллельные темы с разных ресурсов, но как-то не выходит найти каких-то практических задачек среднего уровня по какому-нибудь десктопу. Может кто посоветовать что? Хотя, раз пошла такая пьянка, может быть кто-нибудь вкатится и поможет освоить этот язык и направит с технологиями, которые нужны будут для джуна?
>>792438
#452 #792438
>>792435

> по десктопу


> точка нет


> 2016


Ты опоздал лет на 15
>>792442
#453 #792441
>>792409
Лолка, лучше одного быдло-кодера на зимарине нанять, чем отдельно под каждую мобильную платформу. Тем более, что разницы в производительности нет. Нативность платформ поддерживается
>>792451
#454 #792442
>>792438
А куда вкатываться, если со своим скиллом под мобилки что-то делать не вариант, а веб чет не нравится вообще?
>>792457
#455 #792446
Анончики, а можно ли на WPF сделать интерфейс как у студии? Хочу окошки в основном окне, которые можно аттачить.
>>792452>>792588
#456 #792451
>>792441

Ебаклак, ты маркетолог мелкоговнософта что ли? Шел бы отседа со своими лозунгами.
>>792481
#457 #792452
>>792446

В теории можно конечно, только будет тормозить... как сама студия, лол.
>>792465
#458 #792457
>>792442
WPF
чистый бэкенд
>>792458
#459 #792458
>>792457
Есть какие ру ресурсы с задачками с низкой\средней сложностью?
>>792480
#460 #792465
>>792452
А есть где почитать как такое сделать?
>>792487
#461 #792480
>>792458
я не знаю, соре
#462 #792481
>>792451
Зайди в любую контору и спроси: 1 говнокодер на шарпе или вместо - жабаеб и крестовик для мобилок
>>792489
#463 #792487
>>792465

Не знаю где конкретную имплементацию найти, просто исходя из того что впф как раз был создан для такого типа интерфейсов. Самому наверное долго писать, может стоит посмотреть всякие прикладные бибилиотеки типа telerik или devexpress.
>>792501
#464 #792489
>>792481

Кстати, как в последней студии получить полный доступ к фичам этого ксамарина? Юзаю пиратский ключик если что.
>>792516
#465 #792501
>>792487
попробую devexpress. Спасибо.
#466 #792516
>>792489
На коммьюнити все работает бессплатно
#467 #792559
Так как большинство вакансий под .NET это ASP, насколько важно хорошо разбираться в верстке.
Вот я пришел на собеседование по ASP.NET вакансии. Когда я сказал что хотелось бы заниматься бэкэндом и я не могу по псд шаблону сверстать страничку, на меня посмотрели как на дауна.
#468 #792574
>>792559
Говоришь им, мол я хтмл макака вам или кодер и шлешь нахуй
#469 #792585
Хочу учится программировать на C#. Где можно взять литературу, понятную для ньюфажки?
>>792589>>792652
#470 #792588
>>792446
ВНЕЗАПНО студия и написана на впф.
#471 #792589
>>792585
Во втором посте.
#472 #792594
Поможите с укращением винформс.
Есть один пикчюрбокс. В него грузятся изображения разного размера. И нужно сделать так, чтоб по ширине он всегда был одинаков 480 пикселей, а по высоте занимал ровно столько, сколько нужно для изображения. Т.е. что бы и альбомные листы показывал и портреты.
Поставил ему PictureBoxSizeMode.Zoom Картинка отображается как надо. Но сам бокс не меняется в размере. Если задать ему размер руками, то по бокам всегда будет пустое пространство если изображение не квадратное. А как сделать так, чтоб он сам менял высоту под конкретное изображение?
#473 #792635
>>771533
Сука, теперь я понимаю боль здесь сидящих.

Преобразовывает введенную строку в 16-и битное представление целочисленного числа со знаком. h из контекста задачи - часы. Следовательно задает час, введённый с консоли. Почему Int16 вместо int? Потому что экономия памяти в 16 бит, хотя я бы взял byte, будь это кресты или наконец DateTime'ом кастовал
>>792650
#474 #792650
>>792559

>насколько важно хорошо разбираться в верстке


Нужно знать основы HTML, CSS, JS, Bootstrap. Знать примерно основные фреймворки. Верстать тебе нужно будет только если тебя как фуллстек программиста возьмут, но я бы не стал браться за такое, ибо тебе мозги вынесут просто нахуй. Просто основы подучи и все основные паттерны ASP.NET типа UnitOfWork, Repository, Service. И про SOLID не забудь, а то засмеют.

>>792635

>Потому что экономия памяти


Скорее это только ухудшит работу с памятью. Использовать типы отличные от int нужно с большим умом. Я когда только C# учил тоже везде пихал shot'ы, байты и тому подобное, пока мне не сказали, что я занимаюсь хуйитой.
#475 #792652
>>792585
Если ты в программировании совсем ньюфаг, то я бы посоветовал эту книгу для начала (правда её сложно найти)
http://www.ozon.ru/context/detail/id/1462024/

Вот отзыв:
Книга отлично подходит для тех, кто только начинает изучать программирование, не имея никакого опыта вообще. Написана очень доходчиво. По каждому аспекту рассматривается большое количество часто возникающих вопросов. Для профессионалов в C# чего-либо интересного в книге нет.
#476 #792654
>>792650

>Нужно знать основы HTML, CSS, JS, Bootstrap


А, и HTTP тоже изучи, если ещё не знаешь. Ещё
https://habrahabr.ru/post/189086/
#477 #792661
>>792559

>насколько важно хорошо разбираться в верстке.



По-хорошему, нужно знать и уметь дебажить JS (соответственно, понимать как работают всякие jQuery, Bootstrap, Angular, React), потому что овердохуя багов будет сыпаться в твой бэкенд именно из фронтенда. А значит, неплохо бы ещё понимать, что это за фигня написана в cshtml-файлах. Лишними эти знания не будут, инфа 100%.

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



Ну сейчас рынок такой, хуле. Многие хотят получить именно фуллстэк-кодера, при этом в вакансии может быть написано что угодно. Но это совсем другой уровень мозгоёбства и, соответственно, оплаты труда.
Если ты целенаправленно идёшь на бэкенд, то просто забей на этих товарищей и ищи дальше. Есть адекватные конторы, которые не будут задавать дурацких вопросов, а будут спрашивать только за бэкенд.
#478 #792686
>>792650

>хуитой


И правильно говорят. Нахуй экономить память там, где её много подметает GC. Это не микроконтроллер.
>>792706
#479 #792699
>>792650

> UnitOfWork, Repository


Но ведь это НЕНУЖНО в EF уже это и так все реализовано.
>>793188>>795475
#480 #792706
>>792686
Во имя Того, чье имя – Врата, призываю тебя!
Во имя всех Мелких и Мягких, призываю тебя!
Отрекаюсь от программирования, проклинаю оптимизацию кода,
В ассемблер не верую!
Сей непорочный винчестер и сей компьютер приношу я в жертву тебе,
Да умирится твой голод неутолимый!


Сколько в памяти занимает значение типа bool?
Правильный ответ - 8 байт
>>792714
#481 #792714
>>792706
зависит от типов свойств/полей до и после. вроде же если явно не вмешиваться в механизм размещения типа в памяти, то, например, восемь булов тоже упакуются в один квант
>>792719>>793092
#482 #792719
>>792714

>квант


???
>>792747>>792755
#483 #792747
>>792719

Чувак в квантум брейк переиграл.
#484 #792755
>>792719
ты не знаешь, что означает это слово, либо просто доебался до того, каким образом я описываю принцип?
#485 #792757
Дайте идею для пет прожекта на аспнет.
>>792770>>792790
#486 #792770
>>792757
двач
#487 #792790
>>792757
Platinum tier:
Адресная книга

Low tier:
Блог

Middle tier:
Форум с плюшками

God tier:
Дашборда для любого сложного сервиса с открытым апи (вк, фб), на ангуляре, со сбором какой-нибудь статистики, пиздатым ее отображением (google charts например). Печать отчетов в пдф. Выгрузка файлов в зипах.
#488 #793092
>>792714

> восемь булов тоже упакуются в один квант


Упакуются, а дальше? Допустим ты передаешь булево значение в метод. На уровне процессора это можно сделать через регист общего назначения или через стек, конкретная реализация выбирается компилятором. Для соврременных процессоров основными регистрами вляются 64 битные. Т.е. один бит будет загружен в 64 битный регистр. Если параметров несколько, то скорее всего их передадут через стек. А как проще всего поместить в стек значение?
push rax - помещает в стек весь 64 битный регистр. Снова 64 бита, как ни крути.
Теоретически, если у тебя около 64 булевых переменных, то их можно хранить в одной переменной размером 64 бита и проверять значение каждой командами сдвига. Но я хз как это в шарпе реализовано и реализовано ли вообще. В общем случае для одной едиственной булевой переменной скорее всего выделят все те же 64 бита, что бы проще работалось с регистрами.
>>793111
#489 #793111
>>793092
ну ваще в шарпе можно явно работать с запакованными булями через bitarray/bitvector32, ну и передать его как параметр там, например
#490 #793170
Кто кодит под вин фон, подскажите какое событие вызывается при возврате на предыдущую страницу. Например: нажал кнопку на странице и перешёл в настройке, потом при нажатии кнопки назад и возвращении на страницу откуда открывались настройки нужно обновить данные в соответствии с введенными настройками.
>>793223
#491 #793180
>>792341
OpenTK
#492 #793188
>>792699
К сожалению до многих это до сих пор не доходит и они продолжают лепить IRepository<T> повсюду.
Может быть лет через 10 додумаются до Command/Query Object.
#493 #793223
>>793170
Уже сам нашёл, событие loaded
70 Кб, 915x232
#494 #793253
>>766002 (OP)
Есть кто перекатился с Java? Интересует:
почему перешли,
как давно,
что ожидали,
что получили,
не жалеете?
>>801067
#495 #793270
хочу найти работу. вроде не тупой, быстро учусь, но не знаю что конкретно надо в рабочей ситуации.
В основном ебусь с парсами данных, машинной авторизацией(не для брута) ну и с апи некоторых сайтов баловался.
Какую должность искать?
На что расчитывать?
#496 #793304
Анон, здравствуй, хочу на джуна асп.нет мвц пойти. Подскажи пожалуйста, что нужно знать. У меня есть базовые навыки по шарпу(шарю паттерны и основные ооп знания), более-менее разбираюсь в веб-дев стеке(хтмл+цсс+джаваскрипт), ну и немного по сетям читал. А и sql скрипты юзал с ADOшкой, тоесть какие-то базовые разбираюсь. Купил на лето книжку по asp.net mvc 5, но чувствую подвох, что этого мало чтоб начать писать бэк-энд, подскажи пожалуйста какие еще технологии нужно еще разобрать, выучить? Заранее благодарен.
>>793319>>793328
#497 #793319
>>793304
Если на 100 % решил связаться с MS, то учи ультра-модный .Net Core и молись что оно взлетит
>>793328
#498 #793328
>>793304
Энтити Фрэймворк, ИИС.
>>793319
Оно-то как раз позволит быть независимым от MS (ну точнее не более зависимым, чем джависты зависят от Оракла, а питонисты от левой пятки Гвидо). И с чего бы ему не взлететь?
>>793351
#499 #793351
>>793328
ИИС? прости тупого, гугл непомог
>>793378
60 Кб, 1307x687
#500 #793372
Объясните на пальцах как работает async await? Каким образом он не блокирует первый (UI) поток или как он ожидает окончание работы второго потока/таска, не блокируя UI-поток и оставаясь (?)потокобезопасным?
>>793446
#502 #793446
>>793372
Вроде тут просто объясняют https://www.youtube.com/watch?v=lh8cT6qI-nA
#503 #794136
https://msdn.microsoft.com/ru-ru/library/system.data.missingschemaaction(v=vs.110).aspx

MissingSchemaAction.Ignore

Как заставить его игнорить лишние столбцы. Вот например у меня 10 столбцов в базе, я заполняю датасет "SELECT * FROM SomeTable". Потом
Adapter.Fill(Dataset,"bla bla")

и до этого я хочу вызвать Dataset.MissingSchemaAction.Ignore - по описанию игнорирует лишние столбцы, иду на MSDN встречаю ссылку выше(Какие столбцы, как игнорировать?).
235 Кб, 1750x1670
#504 #794282
Я могу как-то получать поток видео из html5 плеера с помощью webRequest'а? Хочу написать для себя десктопный твич плеер.
>>794961>>794963
#505 #794926
Посоны, кто умеет в mvvm, поясните за структуру:
Есть модель Item, ее имя и id заполняется при старте из sql, value регулярно обновляется с opc-сервера. Фреймворк mvvm light.
Собственно я создал ItemsViewModel, коллекцию в нем, а дальше возникли сомнения. Например, нужно ли для всех методов, работающих с sql, выделить отдельный ViewModel? И т. д. Как это примерно должно выглядеть?
#506 #794961
>>794282
Стандартными средствами это нельзя реализовать вроде бы. Я даже не уверен, что эмуляторы браузеров в состоянии это сделать (NHtmlUnit, AngleSharp и т.д.). Скорее всего, придётся где-то в фоне запускать нормальный браузер и уже из него выковыривать видео через COM-интерфейс, например.
>>794971
#507 #794963
>>794282
Алсо у твича API есть, скорее всего через него можно поток видео забирать.
#508 #794971
>>794961
я знаю, что такую штуку можно сделать с лайвстримером, на гитхубе лежат уже сотни обёрток для него, но чёт хочется самому эту штуку написать.
#509 #795002
Куда выпилили дизайнер диаграм для SQL таблиц?
#510 #795475
>>792699
А ну ка скажи мне. Используешь ты какой нибудь SQL server с ef, а потом случилось так, что тебе пришлось перекатиться на монго. Что ты будешь делать? Переписывать весь код в контроллерах? А может быть легче написать только круд для монги и через ioc контейнер подкинуть его в контроллеры?
Так же представь что у тебя массив из айдишников, и штук так 2к, например. Тебе надо из по вытаскивать обработать и записать в базу. Лучше сделать эту операцию параллельной, знаешь что произойдет если ты будешь использовать общий контекст? Крашнется все к ебеням, вот тут тебе юнитОфВорк и поможет.
>>795517
#511 #795517
>>795475

>тебе пришлось перекатиться на монго



Сложно представить такую ситуацию, люди съезжают куда-нибудь на PostgreSQL с MSSQL, ну да ладно.

>Что ты будешь делать? Переписывать весь код в контроллерах?



Ну так-то контроллеры должны абстрагироваться от взаимодействия с БД. Сервисами, например, которые внедряются через IOC. А уж как там сервис получает данные, насрать абсолютно. Нужно будет, всё быстренько переписывается под Mongo или ещё какую парашу.

>Лучше сделать эту операцию параллельной, знаешь что произойдет если ты будешь использовать общий контекст?



Во-первых, в EF есть Async, а во-вторых, нахуя делать общий контекст?
>>795929
78 Кб, 640x213
#512 #795533
Анон, дай совет по работе с картами.
Задача такая: сервер собирает карту на основе OSM, а также данные о рейсах с flightradar24 и отправляет клиенту в лице WPF-приложения, на котором отображается карта с нанесёнными на неё самолётами.
Как лучше всего можно реализовать часть, связанную с картой? Гуглил много и долго, в том числе на английском, только сильнее запутался. Буду рад ответу на хотя бы один из этих вопросов:
1. Как решается задача в общих чертах?
2. Есть ли хорошие примеры самописного кода?
3. Какие есть библиотеки/фреймворки с хорошей документацией и примерами? Нашел OsmSharp и MapSurfer.NET, но у первого документации нет вообще, у второго достаточно бедная. Разбираться же на примерах без четкого понимания, что вообще происходит придётся очень долго, а времени мало.
>>795639
#513 #795639
>>795533
у майкрософтовского бинга же есть карты, у него отсутствует возможность встроиться в дотнет приложения штоли, не смотрел?
#514 #795929
>>795517
вероятней всего, товарищ имел ввиду, что при использовании Repository поверх того, что предлагает EF, также в случае резкого перепрыга на другую СУБД, ты подключаешь вместо IRepository<T> -> EFRepository<T> ---> HuiPizdaRepozitory<T> и типа все как и раньше. но проблема в том, что сейчас не 92й год, и каждая СУБД тянет на себя всю свою разницу с другими вендорами, а следом за ними и реализация неких плюшек. что в итоге выливается во все-равно переписывание части БЛ под новые нужды
29 Кб, 448x244
#515 #795944
Анон, дай совет криворучке.
Использую OpenGL для отображения картинок (1000x1000 - 3000x3000), но у меня оно медленно работает и память замусоривается.
Схема примерно такая:
Загрузить необходимые текстуры.
Привязать текстуру.
Нарисовать прямоугольник (с текстурой).
Отвязать текстуру.
Удалить текстуру (GL.DeleteTexture), так как она не используется далее. И так несколько раз.
Но даже со сбором мусора вручную (GC.Collect) оно всё-равно забивает всю видеопамять вскоре.
sage #516 #796107
хлопци, как в WPF анимировать движение окна, при условии, что команда на движение подаётся через метод, не связанный с базовыми событиями любого контрола этого окна (типа там mousedown/keypress, т.е. обычные триггеры/ивенттриггеры/мультитриггеры не подойдут, разве что сейчас попробую дататриггер)? пробовал VisualStateManager, но либо не понял как его прикрутить собсна к окну в кзамле описал visualstategroup со всеми соответствующими анимациями просто между тегами window, перед гридом. не grid же мне толкать, либо неправильно вызываю метод VisualStateManager.GoToState(this, "aaa",false); из Model.
#517 #796171
#518 #799095
>>769991
ты же вкурсе мамин русофоб что для англоговорящих всё выглядит так же да?
#519 #799199
Анончики, кто сидит на линупсе, прошу: запустите этот код и скопируйте содержимое сюда. Очень важно знать какие пути добавлены в mono.

foreach(var x in Environment.GetEnvironmentVariables())
{
Console.WriteLine("{0} = {1}", x.Key, x.Value);
}
>>799252
sage #520 #799252
>>799199
Ок, запустил сам на виртуалке.

HOME = /home/Username
PATH = /usr/local/bin:/usr/bin:/bin
MONO_DISABLE_SHM = 1
SHLVL = 0
TMPDIR = /tmp/
LANG = en_US.UTF-8
PWD = /home/Username
#521 #801060
>>767429

>аяксом нельзя аплоадить файлы


Почему? Я php+js макак объясните мне. В .net я не должен что-то выдумывать или пользоваться сторонними разработками, а должен использовать некие стандартные инструменты, которые ограничивают возможности в угоду скорости разработки?

Я апложу аяксом на нужный url, там роутинг, контроллер, экшен, проверка прав, загрузка на диск, запись в бд, отдаю ответ что всё збс. В бразуре js смотрит что ответ збс и прикрепляет миниатюру, либо если всё плохо информирует. Также делаю возможность удаления и сортировки.
#522 #801067
>>793253
А почему ты хочешь перекатится с жабы?
#523 #801353
Проебал месяц занятий, накопилось куча заданий, а я почти нихуя не понимаю. Сильно больно не пинайте, пожалуйста.
Есть задача: сделать два класса. Первый "книга" с параметрами вроде автор-цена и прочее, второй "библиотека" - содержащий массив "книг".
Класс "книга"
class Book
{
public Book(string Autor, string Name, string Publish, string Printing, string Price)
{
this.Autor = Autor;
this.Name = Name;
this.Publish = Publish;
this.Printing = Printing;
this.Price = Price;
}

string Autor;
string Name;
string Publish;
string Printing;
string Price;
+ методы с сет/гет для редактирования
}
Класс "библиотека"
class Lib
{
public Book[] arrLib = new Book[10];
+ методы
}
В мейне создаю книгу
Book B = new Book ("1","2","3","4","5");
Что и как надо сделать, чтоб можно было работать с массивами arrLib (arrLib[0] = B; например)?
#523 #801353
Проебал месяц занятий, накопилось куча заданий, а я почти нихуя не понимаю. Сильно больно не пинайте, пожалуйста.
Есть задача: сделать два класса. Первый "книга" с параметрами вроде автор-цена и прочее, второй "библиотека" - содержащий массив "книг".
Класс "книга"
class Book
{
public Book(string Autor, string Name, string Publish, string Printing, string Price)
{
this.Autor = Autor;
this.Name = Name;
this.Publish = Publish;
this.Printing = Printing;
this.Price = Price;
}

string Autor;
string Name;
string Publish;
string Printing;
string Price;
+ методы с сет/гет для редактирования
}
Класс "библиотека"
class Lib
{
public Book[] arrLib = new Book[10];
+ методы
}
В мейне создаю книгу
Book B = new Book ("1","2","3","4","5");
Что и как надо сделать, чтоб можно было работать с массивами arrLib (arrLib[0] = B; например)?
#524 #801528
Аноны, не могу сообразить в куки.
Первый этап:
Есть один сайт, на него я делаю post-запрос с авторизацией
Результат отправляю в строку и для проверки сохраняю в отдельном файле. Файл проверю - все ок, содержимое такое, какое должно быть после удачной авторизации.
Второй этап:
А вот на втором этапе я и забуксовал
Требуется отправить get-запрос на тот же сайт. Ок. Делаю get-запрос, сохраняю результат в файл, смотрю содержимое файла и вижу то, что бывает, когда неавторизованный пользователь кликает на какую-нибудь ссылку, требующею авторизации.

Что мне в данном случае делать?
Я понимаю, что нужно использовать куки, но я не могу банально допереть как получить куки после того, как я сделал post-запрос

Подскажите, в какую сторону копать.
#525 #807070
Анончик,
Раз уж тред про .NET, добавь пожалуйста годных учебников по VB.
Спасибо.
Тред утонул или удален.
Это копия, сохраненная 31 июля 2016 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски