Задать вопрос
  • Как классу Program задать модификатор public в c# 9.0?

    Jeer
    @Jeer Автор вопроса
    уверенный пользователь
    Подсказали, я переписал класс Program в олдовом формате:
    namespace Api
    {
        public class Program
        {
            static void Main(string[] args)
            {

    И это завелось, хотя мне было как-то неочевидно, что так можно сделать.
    Всем спасибо!

    UPD
    Ещё подсказали, что можно в новом синтаксисе можно в самом низу написать через partial и это так же будет работать:
    using...
    ... 
    app.Run();
    
    public partial class Program { /* Expose the Program class for use with WebApplicationFactory<T> */ }
    Ответ написан
    Комментировать
  • Как правильно писать на c# классы-обертки над коллекциями, чтобы доступ к коллекции был по имени класса?

    Jeer
    @Jeer Автор вопроса
    уверенный пользователь
    Нашел, этот раздел называется "индексаторы" метанит
    Ответ написан
    Комментировать
  • Как прочитать куки с одного домена на другом?

    Jeer
    @Jeer
    уверенный пользователь
    Никак.
    Ограничения безопасности
    Ответ написан
  • Порекомендуйте подходящую базу данных?

    Jeer
    @Jeer
    уверенный пользователь
    Для бигдаты часто используется hive, например, озеро данных в налоговой, поковыряйте в эту сторону.
    Но вообще, под ваши требования нужно выбирать не базы, а OLAP решения
    Ответ написан
    Комментировать
  • Где создавать новых пользователей при использовании IdentityServer4?

    Jeer
    @Jeer
    уверенный пользователь
    Привет,
    Авторизация на основе ролей позволяет вам разграничивать функционал. То есть, вы можете сделать один сайт, у кого будут роли на управление пользователей, будут видеть пункт в меню и саму страницу.
    Проще для разработки и развития системы разделять клиентскую часть и админку, если они не пересекаются - две веб морды.
    Так же, если апишками будут пользоваться третьи лица, посмотрите другие способы аутентификации, например, почитайте про JWT токены
    Ответ написан
    Комментировать
  • Почему так работает decimal.Parse?

    Jeer
    @Jeer Автор вопроса
    уверенный пользователь
    В общем, я наткнулся на подобные ошибки при считывании данных. Удивлён, что вообще существует такая бредовая ситуация.
    Решилось тем, что я поменял в базе тип поля на money, в entity оно сгенерировалось как decimal(19,4) и ошибка ушла
    Ответ написан
    Комментировать
  • Как всё таки работает асинхронность?

    Jeer
    @Jeer
    уверенный пользователь
    мне понравилась коротенькая книжка
    Асинхронное программирование в C# 5.0 | Дэвис Алекс
    Там всё разложено по полочкам не только под c#, сама концепция
    https://www.ozon.ru/product/asinhronnoe-programmir...
    Ответ написан
    Комментировать
  • Как очистить textarea с помощью javascript?

    Jeer
    @Jeer
    уверенный пользователь
    Привет,
    Нужно внутри функции sendMessage обработать такую команду:
    function sendMessage() {
                var messageField = document.getElementById("message");
                var userNameField = document.getElementById("username");
    
    if(messageField  == '/clear'){
       var chat = document.getElementById("messages");
       chat.value = '';
    } else {
       var message = userNameField.value + ":" + messageField.value;
       ws.send(message);
    }
                messageField.value = '';
            }
    Ответ написан
    Комментировать
  • Какие есть средства визуализации данных (роад-мап, структуры продуктовых линеек, проектов)?

    Jeer
    @Jeer
    уверенный пользователь
    на подобии ментальной карты

    Ну и возьмите майнд мап, например, https://www.mindmeister.com/
    Ответ написан
  • Как правильно интегрировать несколько систем в компании?

    Jeer
    @Jeer
    уверенный пользователь
    Привет,
    Проблема существует практически на всех предприятиях, но обычно это разные системы, типа 1с на кадры, самописная c# по документам и какая-нибудь готовая опен-сорц система поддержки на php. Ваш вариант, что всё написано на одной технологии благо, используйте это, заворачивайте в нугет библиотеки.
    Про esb - все очереди используются для синхронизации данных. То есть, у вас изменился некий сотрудник в кадрах, сохраняется не напрямую в бд, а через очередь. Другие системы так же подписаны на эту очередь и обновление сущности сотрудника идёт во всех системах, которые хранят дубли необходимых им данных. Как вы понимаете, тут куча накладных расходов и нештатных ситуаций. За этим нужно следить и как-то восстанавливать/докачивать данные. Тем не менее, это самый правильный вариант, ибо в противном случае синхронизацию данных делают кастылями через вьюхи/джобы/хранимки и как только отвратительно не делают. В общем, если хватает скиллов - делайте так, будут независимые рабочие приложения.
    По общению через апи - там нет проблем с какими-то маленькими и атомарными операциями. Проблемы начинаются когда необходимы _распределённые транзакции_ погуглите про это, как реализовывают и оцените насколько тяжелее будет разработка. Вторая тут проблема - это отчёты, тупо джоины. Вам нужно выгрузить какую-то консолидированную инфу из одной системы, вы делаете, но в ней у вас только айдишники пользователей. Либо вы эти айдишники отправляете в сервис кадров и получаете развёрную инфу по каждому, либо на каждый такой запрос вообще грузите полный список пользователей. А потом ещё говорят, нужно исключить данные по пользователям на время их отсутствия. Опять же эти данные в сервисе кадров и, в общем, нужно лепить какой-то большой снежный ком не из снега. Окей, если прям вопрос с отчётами, можно будет заводить какие-то консолидированные хранилища и все системы будут туда сливать данные, но вот при обычном использовании вам всё равно потребуется делать большие джоины, какие с этим косяки я примерно описал.
    По варианту общих сервисов, я за него из-за простоты:
    Хранить строки подключений нужно в каждом проекте - это не проблема
    Дублировать бизнес-логику не нужно, выносите её так же в общие сервисы
    Обновлять будет нужно оба сервера, если в общем сервисе баг. Тут разговор, очевидно, про "баг на проде" - из-за общего кода будет баг на обоих продакшенах. Окей, как часто у вас возникают такие ситуации и насколько долго обновить два прода вместо одного?
    Ответ написан
    1 комментарий
  • Медленный ли современный Angular в маленьком проекте?

    Jeer
    @Jeer
    уверенный пользователь
    SPA приложения отображаются дольше, чем одна обычная страница с сервера. Затем, когда первая страница загружена, навигация по проекту идёт гораздо быстрее и приятнее для пользователя.
    Там процесс идёт следующий, вначале загружается одна пустая страница и файлы js. Затем js строит весь пользовательский интерфейс динамически. С таким подходом поисковые роботы вообще перестали работать. Сейчас вроде как только гугл нормально поддерживает индексацию в динамических страницах, и то, могут быть проблемы.
    Чтобы сделать так, чтобы по ссылке с сервера загружалась готовая страница, используют технологию ssr (server side rendering), там суть в том, что вначале страница динамически строится на сервере с помощью node.js, чтобы по запросу поискового робота загружалась готовая корректная страница. Как вы понимаете, тут можно много геммора хапнуть во-первых, во-вторых, построение страницы на сервере всё равно будет дольше обычного шаблонизатора.
    Если у вас нет динамического содержимого и вам принципиальны поисковые роботы - не используйте spa решения, у вас на голову вырастет сложность проекта, что значит увеличенное время разработки, поиска ошибок, поддержки проекта в дальнейшем.
    Ответ написан
    Комментировать
  • ADO.Net почему не выходит подключение?

    Jeer
    @Jeer
    уверенный пользователь
    Каким образом вы работаете с базой и что за база вообще, ms sql?
    Если через sql management studio вы создаёте таблицы, каким образом вы подключаетесь к базе?
    Попробуйте подключиться к этому серверу (localdb)\mssqllocaldb с виндовым логином и паролем. Если подойдёт, то используйте его и в строке подключения
    Подключение через DataSource было ранее в .net framework через веб конфиг. Я не разбирался с этим особо, возможно, они равнозначны. В .net core строки подключения пишутся в appsettings.json примерно так:
    "ConnectionStrings": {
    "AppConnection": "Server=(localdb)\\mssqllocaldb;Database=game;Trusted_Connection=True;MultipleActiveResultSets=true"
    }
    Тут используется виндовый логин/пароль. Если вы создали своего пользователя, то вместо Trusted_Connection=True; вбиваете User ID=root;Password=root;
    Дополнительный вопрос, зачем вам вообще ado.net, когда есть entity framework?
    Ответ написан
    Комментировать
  • Как присоединиться к стартапу за долю?

    Jeer
    @Jeer
    уверенный пользователь
    Под слово "стартап" подгребают очень много всего.
    Ваш случай, принять участие в чьём-то опен-сорц или хобби проекте. Ищите небольшие проекты в соц сетях, каналах телеграмма, которые вам интересны.
    Например, мне попался чувак, который делает танк, печатает детали на принтере, закупает оборудование, ведёт блог (в телеге просто). Единомышленники в таких проектах всегда нужны
    Ответ написан
    Комментировать
  • Как спланировать проект?

    Jeer
    @Jeer
    уверенный пользователь
    Майнд мап тема прикольная, когда есть какие-то идейки и ещё не до конца понятно как и что будет. Если у вас уже завершённая мысль, можете просто составить ТЗ по ГОСТу, этот нудный документ должен быть понятен не только вам, но и другим участником (а когда вы через полгода смотрите на своё творение, вы уже как будто другой человек)
    Так же можно просто нарезать задач, например в диаграмму ганта
    Ответ написан
    Комментировать
  • Он-лайн сервис по web-разработке (удаленка). Сажать на BITRIX или писать свой движок?

    Jeer
    @Jeer
    уверенный пользователь
    Если текущие решения устраивают, то надо брать их. Свой движок в любом случае будет делать дороже (ну а по времени вообще не сравнить).
    Битрикс изначально идёт как црм для продажников. Да, теоретически, туда можно впихнуть таски для программистов, но я такого не встречал. Облачное решение стоит довольно дёшево. Коробочное чуть подороже, там идёт лицензия на 1 или 2 года, затем эту лицензию можно не продлевать просто. Продлить, при необходимости. Если у вас никаких кастомизаций нет, тогда и поддержка будет не нужна.
    Другое дело, что для управления командами разработки есть специализированные решения, из крупных Jira и Microsoft TFS (сейчас Azure что-то там). Есть и пиратские версии для tfs какого-нибудь 2014 года (неподдерживаемые), есть разного рода хитрости, например, регистрироваться в жире по студенческой почте и продлевать. Менее крупных проектов очень много, цены у всех достаточно лояльные.
    Ответ написан
    Комментировать
  • Как получить данные из JSON?

    Jeer
    @Jeer
    уверенный пользователь
    Привет,
    Вопрос задан чёрти как, плюс совершенно не известны технологии и ваша логика.
    Есть некая веб страница в браузере, на неё заходят редко и там необходимо отобразить какие-то табличные данные, которые приходят с гугл таблиц. Вариант хранить дубль всех данных на клиенте вытекает в дополнительные сложности по синхронизации данных.
    Намного надёжнее и проще просто поставить прелоадер, 2-3 секунды единоразово для загрузки данных - это нормально.
    Если у вас spa приложение, и на эту страницу _обязательно_ зайдут после входа в приложение, вы можете сделать предварительную загрузку просто в какой-то шаредный сервис. Минус в том, что данные будут загружаться всегда, даже если пользователь не пойдёт на эту страницу.
    Далее, веб-браузер не может общаться ни с какими файлами на компьютере, это безопасноть. Есть яваскриптовые объекты, которые привязаны к веб странице. Разумеется, после обновления страницы эти данные чистятся.
    Если вам нужно постоянное хранение данных, необходимо использовать инструмент localStorage. По сути это key-value база данных в браузере. В ней можно разместить до 5 мегабайт данных (возможно, для разных браузеров различается, не знаю). Сами механизмы синхронизации разбирать не буду, мало информации
    Ответ написан
    Комментировать
  • Как учитывать стоимость своей работы на своем стартапе?

    Jeer
    @Jeer
    уверенный пользователь
    Привет, понимаю, что пост древний, но всё же интересный.
    Видел, что хотели один из комментариев ответом сделать, хотя ответа до сих пор нет.
    Как в итоге поступили, как получилось?

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

    Либо вы платите себе зарплату как наёмному сотруднику по рыночной цене, если есть бюджет на зарплату, либо вместо зарплаты выдаёте себе "долговую расписку", если бюджета на зп нет. Это классический вариант, когда у вас есть несколько инвесторов, вы на берегу составляете план, что надо столько денег, через столько времени компания будет приносить столько прибыли, которая будет делиться между инвесторами в соответствии с первоначальными вложениями. Тут есть много классических проблем, которые начинаются, когда через запланированное время вы не выходите на ожидаемую прибыль или, что ещё хуже, нужны ещё инвестирования и всякие пересчёты долей с обидами и скандалами. Что-то вроде, я тебе дал 2 миллиона, ты обещал 50% прибыли. Проект до сих пор не запущен, ты говоришь, что нужно найти где-то ещё 2 миллиона для запуска и у меня будет 25% прибыли. Мы так не договаривались, ищи дополнительные средства где хочешь, это не мои проблемы, за мной должно остаться 50%. Ну вроде такого.
    Второй вариант, эджайл. Когда не нужно искать сразу всю сумму на разработку, достаточно докидывать необходимые суммы на какие-то определённые работы. Надо купить стулья - купил Петя, оплатить работу фрилансера - оплатил Вася. Ежемесячная оплата труда сотрудников - платит Игорь. До выхода на точку самоокупаемости все эти расходы копятся в одном месте. После выхода на самоокупаемость фиксируется себестоимость продукта. Считаются доли в процентах, согласно вложению всех участников. Чистая прибыль пилится в соответствии с долями. Довольно логично, как по мне.

    Вот тут ещё было подобное обсуждение Нормальная ли у меня теория по оценке вклада участников в стартап?
    Ответ написан
    2 комментария
  • Как организовать внутренний стартап?

    Jeer
    @Jeer
    уверенный пользователь
    Привет, не вижу ответа.
    Что в итоге решили делать?
    До чего договорились?

    Скептиков всегда будет много. Кого-то обманули, кто-то обжёгся на подобном.
    Забавляют ответы, типа "руководитель может нанять кого-то вместо вас" и подобные. При этом в соседних ветках задаются вопросы "где найти такого человека с горящими глазами" - ответом в этих ветках звучит "нигде".
    Ответ написан
  • Как построить сотрудничество с партнером по проекту?

    Jeer
    @Jeer
    уверенный пользователь
    Привет, вопрос старый, но всё ж таки, что в итоге решилось?
    Нормальная ли у меня теория по оценке вклада участников в стартап? - вот тут есть ответ на этот вопрос (который с карточками), ваш случай
    Ответ написан
    Комментировать
  • Можете помочь с идеей проекта?

    Jeer
    @Jeer
    уверенный пользователь
    Ну как, сделали что-нибудь?
    Не надо придумывать сложные вещи. Вам нужно остановиться на первой части - "Есть пользователи, чей характер нам известен(в той или иной степени)" - вы можете предоставить пользователю разжёванную информацию, как и из чего он складывается и на что влияет. Какие у пользователя ценности в жизни.
    И дальше давать некие полезные советы, какой тип работы больше подходит пользователю
    Какие недостатки у него есть, которые он не замечает и что нужно подтянуть
    Какие больные точки есть, чтобы избегать примитивного манипулирования (противопоставить себя гаданию и колдунам)
    В том числе, научить пользователя самому определять характер/цели партнёра, чтобы выбрать себе пару самостоятельно.

    Вообще, психология у нас не очень популярна, если сделать качественный и интересный продукт, примерно как сейчас есть приложения для обучения английскому, только для обучения психологии - посмотрите, сколько там уловок, чтобы приложение было интересное
    Ответ написан
    Комментировать