Задать вопрос
  • Парсинг стены вконтакта через АПИ, как решить проблему ограничения на кол-во запрашиваемых постов?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Перечитать документацию до полного просветления и обратить внимание на параметр offset
    Ответ написан
    Комментировать
  • Как записать мнимую единицу?

    moiseykin
    @moiseykin
    ߷ крутится, % мутятся
    using System;
    using System.Numerics;
    
    public class Example
    {
       public static void Main()
       {
          Complex value = Complex.ImaginaryOne;
          Console.WriteLine(value.ToString());
          Complex value1 = new Complex(0, 1);
          Console.WriteLine(value.Equals(value1));
       }
    }
    Ответ написан
    Комментировать
  • System.io mscorlib или system в C#?

    Nipheris
    @Nipheris Куратор тега C#
    Не совсем понятно, зачем вам это. Когда вы пишете using System.IO в текущий скоуп добавляются сущности из всего System.IO, не важно из какой сборки (иными словами, со всех сборок сразу). В этом и смысл пространств имён в дотнете - они предствляют собой способ логического деления проекта и библиотек (в отличие от физического деления на сборки). Если вы не хотите подключать всё, подключите конкретный класс таким образом:
    using StreamReader = System.IO.StreamReader;
    Ответ написан
    2 комментария
  • Как реализовать динамическое изменение класса в C#?

    @Free_ze
    Пишу комментарии в комментарии, а не в ответы
    Если я правильно понимаю, то вы про полиморфизм)
    Что-то вроде:

    // Каждая локаль должна иметь в себе словарь с переводами
    public interface class ILocale {
        Dictionary<string, string> Translation { get; }
    }
    
    // реализации разных локалей
    public class English : ILocale {
        public Dictionary<string, string> Translation {get; set;} = new Dictionary<string, string> {
            ["test"] = "Test"
        };
    }
    public class Russian : ILocale {
        public Dictionary<string, string> Translation {get; set;}  = new Dictionary<string, string> {
            ["test"] = "Тест"
        };
    }
    public class Ukrainian : ILocale {
        public Dictionary<string, string> Translation {get; set;}  = new Dictionary<string, string> {
            ["test"] = "Тест"
        };
    }
    public class Kazakh : ILocale{
        public Dictionary<string, string> Translation {get; set;} = new Dictionary<string, string> {
            ["test"] = "Сынақ"
        };
    }

    И, допустим, читаем из какого-то конфига:
    namespace TestLib{
        class Program {        
            static void Main(string[] args) {
                ILocale locale = GetLocale();
                WriteLine(locale.Translation["test"]);
                ReadKey();
            }
        }
    
        private static ILocale GetLocale() {
            // Мы можем получать ее динамически из конфига
            // но вызывающий код знает лишь, что это будет некая локаль, но какая
            // точно - неизвестно
            return Configuration.GetLocaleFromXml(); // псевдокод
        }
    }
    Ответ написан
    2 комментария
  • Что означает эта строка?

    Ввел в гугле
    c# default
    Первая ссылка ведет на офиц документацию .
    Совпадение? Скорее всего...
    Ответ написан
    Комментировать
  • Каких соглашений по именованию вы придерживаетесь при обмене JSON данными с ASP.NET-бекэндом?

    @dvig8xi
    1-е
    Прописал в WebApiConfig и забыл
    config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver();
    Ответ написан
    Комментировать
  • Как получить комментарий, на который ответил человек?

    @r_zaycev
    Эмм,
    <reply_to_comment>10</reply_to_comment>
    где 10 <- ид комментария в текущей выборке?
    Ответ написан
    3 комментария
  • Как избавиться от такой ошибки NullReferenceException: Object reference not set to an instance of an object?

    ImmortalCAT
    @ImmortalCAT
    C# loving
    ваш объект не инициализирован - пуст - null - не создал и т д
    Ответ написан
    2 комментария
  • Как обозначить все Button-ы одним словом?

    @JoyceGraham
    Не проще в контейнер их засунуть и проходить по нему.
    Ответ написан
    Комментировать
  • Регулярные выражения по строкам или несколько значений?

    zagayevskiy
    @zagayevskiy
    Android developer at Yandex
    Учите регулярные выражения. Ну, например: professorweb.ru/my/csharp/charp_theory/level4/4_10.php
    Вам нужен символ |
    P.S. Это я вам удочку вместо рыбы даю, если что
    Ответ написан
    2 комментария
  • Какая должна быть функция?

    @nirvimel
    функция — это соответствие между элементами двух множеств, установленное по такому правилу, что каждому элементу одного множества ставится в соответствие некоторый [один] элемент из другого множества.

    Функция (математика)

    Следовательно, не может существовать такой функции y(x), в которой одному значению аргумента x соответствуют разные значения функции y, как у вас (4, 0.5), (4, 1), (4, 1.5), (4, 2).

    Зато вполне могла бы существовать x(y), график которой проходил бы через данные точки.
    Ответ написан
    Комментировать
  • Как извлечь значения из переменной, с помощью регулярки С#?

    Nipheris
    @Nipheris Куратор тега C#
    ^(?<text>[^:]*):(?<text2>[^:]*):(?<text3>[^:]*)$

    Не знаю, по какому источнику вы смотрели, в MSDN все предельно понятно: https://msdn.microsoft.com/en-us/library/bs2twtah(...
    Ответ написан
    2 комментария
  • Как получить вращение между вращениями?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Кватернион - вполне русское слово.

    Итого, имеем кватернионы A и B, хотим найти такой C, что
    AC=B
    значит, умножив справа обе части на кватернион, обратный к A, можем получить
    C=invert(A)B.

    Обращение кватерниона - взять сопряженный кватернион и поделить на квадрат нормы. Это все есть там же в википедии.
    Ответ написан
    4 комментария
  • Как передать список в одном параметре для хранимой процедуры execute?

    @Gromadchuk
    UPD:
    Хотелось бы отредактировать мой ответ, чтобы новые люди не попадались на этот костыль. Ответ ниже устарелый, на сегодняшний день хранимые процедуры ВКонтакте поддерживают метод split. Теперь не нужно никаких костылей, достаточно было бы вызвать return Args.list.split(",")

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

    var groupList = Args.list;
    
    var group_ids = API.groups.getById({
        group_ids: groupList
    })@.id;
    
    return group_ids;


    215cda04dda4428686b7565099c217e5.png
    Ответ написан
    2 комментария
  • Почему программа не дает выключиться Windows?

    arxont
    @arxont
    C# программист
    Всё просто - судя по всему вы переписали функцию закрытия: Close(). И вместо закрытия программы где-то там у вас программа сворачивается в трей, соответственно при выключении компьютера программа пробует закрыться, а на закрытие обработчик который закрытие блокирует.

    Чтобы исправить можно воспользоваться FormClosingEventArgs Class

    private void MyForm_FormClosing(object sender, FormClosingEventArgs e)
    {
        if (e.CloseReason != CloseReason.WindowsShutDown)
        {
            // Ваш код
        }
    }
    Ответ написан
    Комментировать
  • Как найти аудио в вк зная aid?

    @Gromadchuk
    Ответ написан
    Комментировать
  • C# заменит ли Java?

    Oxoron ну что тут сказать навскидку...
    Я всегда считал .net допиленной java-платформой. Не то, чтобы в дотнете прям нереальные невероятные новшества, но все же некоторые вещи были обдуманы еще раз. Например, очень важным считаю разделение на reference и value типы. Правда, ИМХО, MS не довела идею до победного конца (слишком много технических вопросов нужно учитывать при выборе struct vs class), но все равно шаг очень правильный.
    Плюс, считаю важным отсутствие корреляции между логическим структурированием библиотек (по неймспейсам) и физическим (по сборкам). На каждом уровне должны приниматься отдельные решения насчет того, что куда класть.
    Еще одним преимуществом (нивелированным на данный момент) была изначальная ориентация .net на мультиязычную поддержку. Сейчас конечно JVM-языков навалом, но раньше это все-таки смотрелось киллер-фичей .net. Особенно поддержка "склеивающих" языков, таких как C++/CLI, которые позволяли интегрировать уже существующие компоненты с .net-приложениями. Дотнет изначально не был платформой в себе, разработчикам давали массу инструментов для интеграцией с COM и native-кодом. Ну и само собой managed-языки в приличном количестве, вон F# уже довольно давно подтянулся как официально (!!) поддерживаемый.

    А вообще конечно изначальным преимуществом .net были именно языки. Я думаю даже самые ярые джависты со мной согласятся, что с момента выпуска C#, язык Java развивается догоняющим образом. Можно опять сказать, что есть Scala, но тогда нужно учесть, что C# изначально был визитной карточкой платформы с момента ее появления. Ну и самое главное - инструменты. В мире Java достаточно хороших IDE, но уровень взаимоподдержки Студии и .net насколько мне известно пока не достигнут.

    И тут мы выходим на стандартное основное преимущество решений от MS - максимальная "готовность" и интеграция продуктов. К сожалению последние года 3 в Джаву не совался, но знакомые не раз говорили, что с отсутствием знаний об обеих платформах им гораздо легче было поднять hello-world веб-сайт (!) на asp.net в студии, нежели на том же Spring. Так или иначе, это фактор.

    Теперь библиотеки. Конечно, в мире джава их огромное количество. Я думаю и сегодня их значительно больше, чем в дотнет. Две либы в моем текущем проекте - NHibernate и NetTopologySuite - это порты с джавовских либ. Джава рулит на сервере. Про..аная Майкрософтом настоящая кроссплатформенность .net не давала ему потеснить джаву. Сейчас конечно это усиленно исправляется - в дотнете уже наступило перерождение после массовых релизов в open-source, переделанного asp.net, и появления DNX. По сути теперь .net официально поддерживается на *nix - системах. Это конечно надо было сделать намного раньше, но и сейчас этому рады.
    NuGet прекрасно справляется со своими задачами, более тесная интеграция в билд-процесс в DNX только улучшит процесс взаимодействия с ним.

    Ну и последнее - разработка UI. Все что есть в Java-мире (JavaFX, Java3D, Swing) это совсем не то. Windows Forms был отличным аналогом Дельфийских компонентов для UI, WPF в свое время вышиб немало дверей своим появлением. Если б он еще и развивался как подобает... Да, конечно, на джавовских технологиях вы напишите кроссплатформенную вещь, но она будет одинаково чужеродно смотреться и на винде, и в линуксовых desktop-средах. А людям в enterprise не особо нужна кроссплатформенность в UI - им намного важнее аккуратный привычный интерфейс, в том числе на Винде. Сейчас WPF может потеснить только современный Qt. Выбирая сегодня UI для десктопа, я бы выбирал между WPF и Qt, про джаву бы даже не подумал (да, я считаю что сегодня далеко не все можно и нужно пихать в браузер на тормозной JS. Весь новомодный неповоротливый софт, написанный с использованием Atom-а, меня удручает).
    ПРАВКА: посмотрел последние демки по JavaFX. В общем-то неплохо, осталось только дождаться хорошего роста коммьюнити и надеяться что не будет проблем с производительностью в сложных приложениях.

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

    P.S. Да, тут кстати пишут что игродельство на C# достигло серьезного уровня. Я 3d делал и делаю на C++, поэтому тут пусть кто-нибудь другой прокомментирует.
    Ответ написан
    1 комментарий
  • Как обращаться к памяти на C#?

    mourr
    @mourr
    Passionate JS developer
    В C# есть отличный unsafe, который разрешает делать базовые операции с памятью, типа malloc, memcpy итд - реализуется это все через P/Invoke - вызов Managed кодом Unmanaged функций (например HeapAlloc-HeapFree из kernel32, для работы с памятью, да и любое другое unmanaged безобразие в контексте managed сборки)
    Вот пару ссылочек по теме
    Работа с памятью напрямую (malloc в C#)
    Механизм Platform/Invoke
    Ответ написан
    Комментировать