• Как посмотреть, во что разворачивается синтаксический сахар C#?

    @yuopi
    C# developer
    ildasm не дает асемблерный код, он дает IL-код. Довольно таки читабельно, попробуйте
    В книге CLR via c# что как работает рассказывается именно через эту прогу
    Ответ написан
    Комментировать
  • C# и математика, кто поможет формулу перенести в синтаксис?

    GavriKos
    @GavriKos Куратор тега Unity
    Если вы уж так интересуетесь оптимизацией, то должны понимать, что сравнение двух величин может выполняться дольше, чем мат.операция.
    В вашей формуле - используется max и min. В классической формуле квадратичного расстояния - только умножение и сложение. Что ИМХО быстрее. К тому же в самой доке написано - бонус в том, что НЕ ИСПОЛЬЗУЕТСЯ корень (да, корень - дорогая операция).
    И - если я правильно прочитал формулу - вам все равно нужны длины векторов. Что опять таки корень и все такое.

    В общем - не уверен что это даст прирост, не даст погрешности (вроде в доке что то об этом есть). И, если хотите в оптимизации - учите математику.
    Ответ написан
    4 комментария
  • Тип данных аналогичный таблице в C#?

    @lil_Toady
    Все верно, вам подойдет struct или class, чтобы описать одну запись (строку), разница между ними будет что первое - value type, не может быть null. И далее любая коллекция, даже простой массив.

    Предположим что вы описали сущность так:
    class Item
    {
        public int Id { get; set; }
        public string Title { get; set; }
        public DateTime Time { get; set; }
    }


    для простоты используем List - простейший динамический список, можно добавлять, удалять и т.п.:
    var timeTable = new List<Item>
    {
      new Item { Id = 1, Title = "Иван Сергеевич", Time = DateTime.Parse("20.05.2019 18:45") },
      new Item { Id = 2, Title = "Петр Николаевич", Time = DateTime.Parse("20.05.2019 16:45") },
    };


    И теперь через Linq (using System.Linq;) можно работать с этими данным, работает на любой коллекции или массиве, внедряющих интерфейс IEnumerable, и предоставляет различные методы типа Where, Min, Max, OrderBy и т.п.
    var ordered = timeTable.OrderBy(item => item.Time); // Получили IEnumerable<Item>  отсортированный по Time


    P.S. Такая запись, более похожая на SQL тоже возможна, но думаю подход с методами будет все же более удобным
    var ordered = from item in timeTable orderby item.Time ascending select item;
    Ответ написан
    2 комментария
  • Почему C# не подходит для ML, а python подходит?

    @Dogrtt
    Qt/Python разработчик
    Давай подумаем вместе. Что такое популярность? Какие популярные группы ты знаешь? У них хорошая музыка или ориентированный на сиюминутную рубку бабла шлак? Отож. Популярность != качественность. Как говорили наши мамы: "Все пойдут прыгать с крыши, ты что, тоже пойдешь?". Так что используй то, с чем удобней работать. Ты больше потратишь времени на разборку особенностей нового для тебя языка, чем на написание, пусть и не такое быстрое (в плане процесса написания), на том языке, который хорошо знаешь.
    Ответ написан
    Комментировать
  • Как прочитать DBF в ASP.net core?

    DarkRaven
    @DarkRaven
    разработка программного обеспечения
    Вы вот это смотрели?



    UPD. А вот это не смотрели ?

    1. https://www.nuget.org/packages/System.Data.Odbc/
    2. https://dotnet.myget.org/feed/dotnet-core/package/...


    Как я понял, они есть в .NET Core
    Ответ написан
    3 комментария
  • WebApi + Razor как это должно работать?

    @kttotto
    пофиг на чем писать
    Mvc на основе cshtml файлов генерит html и отдает его клиенту. Тоже самое можете делать Вы сами руками в WebApi приложении, используя RazorEngine.Templating.
    Вот ссылка на похожий вопрос.
    И прилагаю урезанный пример, который мы использовали у себя для генерации отчетов, я думаю разберетесь.
    spoiler
    public class RazorTemplateGenerator
    {
    	public void SetupReportTemplating(string baseDirectory = null)
    	{
    		var cfg = new TemplateServiceConfiguration
    		{
    			Debug = true
    		};
    
    		Engine.Razor = RazorEngineService.Create(cfg);
    
    		var folder = Path.Combine(baseDirectory ?? System.AppDomain.CurrentDomain.BaseDirectory, "Pages","PageTemplates");
    		var templates = Directory.GetFiles(folder, "*.cshtml");
    		foreach (var fName in templates)
    		{
    			var info = new FileInfo(fName);
    			var tName = Path.GetFileNameWithoutExtension(info.Name);
    			var template = File.ReadAllText(fName);
    			var src = new LoadedTemplateSource(template, fName.Replace(@"\bin",String.Empty));
    			Engine.Razor.AddTemplate(tName, src);
    		}
    	}
    
    	public void CheckCompile(string name)
    	{
    		Engine.Razor.Compile(name);
    	}
    
    	public string RenderPage(string viewName, object model)
    	{
    		return Engine.Razor.RunCompile(viewName, model.GetType(), model);
    	}
    }
    Ответ написан
    Комментировать
  • Как маппить пакеты по opcode?

    zagayevskiy
    @zagayevskiy
    Android developer at Yandex
    Я правильно понял задачу? Нужно по опкоду(числу) получить конкретный инстанс класса?
    Кажется, самым гибким и расширяемым способом будет фабрика, внутри которой switch(в одном-единственном месте).
    Ответ написан
    Комментировать
  • Как исправить ошибку после переноса сайта?

    Access to the database file is not allowed

    База хранится в mdf файле? Есть ли права на чтение/запись у пользователя из под которого запускается iis? Существует ли этот файл по этому пути?
    C:\inetpub\vhosts\u0593694.plsk.regruhosting.ru\site.com\Cms_Data\Contents\Kr\Data\Kraftler.sdf
    Ответ написан
    2 комментария
  • Как сделать такую же паутину?

    dasha_programmist
    @dasha_programmist
    ex Software Engineer at Reddit TS/React/GraphQL/Go
    Вот там есть несколько демок вместе с кодом
    Ответ написан
    Комментировать
  • Как сделать такую же паутину?

    @Seahunter
    Вот библиотека которая поможет в этом https://vincentgarreau.com/particles.js/
    Ответ написан
    Комментировать
  • Что значит вопросы при подключении js кода?

    dollar
    @dollar
    Делай добро и бросай его в воду.
    Защита от кеширования.
    Например, JS файл генерироуется динамически каждый раз. Нужно, чтобы он не кешировался браузером, а каждый раз загружался с сервера.
    Ответ написан
    1 комментарий
  • Какие эффективные методы для обработки больших массивов данных?

    @dmshar
    1. 500 тыс. чего? Записей? Какой объем записи? Но вообще-то говоря, данные такого объема "большими" считать не приходится - это вполне умеренные объемы для практически любых современных задач и соответственно - современных инструментов работы с данными.
    2. Данные указанного типа - относятся к т.н. временнЫм рядам. Классика жанра, если временнЫе метки задают равные интервалы, но и в противном случае - можно работать с такими данными относительно легко - главное, понимать, что же с этой информацией вы хотите сделать.
    3. Форма визуализации времаннЫх рядов - различного рода графики. Ось Х - время, ось Y - значения ряда. Впрочем, могут быть и другие представления, в зависимости от цели такой визуализации.
    4. С такими данными обычно решают два класса задач. Либо по набору значений ряда в прошлом выполняют предсказание значений, которые ряд будет принимать в будущие моменты времени. Либо обнаружение в прошлых значениях ряда некоторых аномалий. Тут может быть два варианта - либо выявление выбросов, т.е. единичных точек, чье поведение противоречит модели поведения ряда, либо выявление момента смены собственно самой модели поведения ряда.
    5. Да, "специалисты по статистике" тут - наверное, к вашему удивлению - тут есть.
    6. "не могу сформулировать задачу, т.к. не владею предметной областью статистики -- а вы сформулируйте свою задачу в своей предметной области, а специалисты по статистике вам потом помогут.
    Ответ написан
    8 комментариев
  • React: что за странное поведение?

    @Aves
    Функция set передаётся из Group в GroupList, а из GroupDirectory - нет. Нужно сделать передачу set GroupList > GroupDirectory > GroupList.

    Ну и в качестве замечаний: self здесь совершенно бесполезен и set - само по себе плохое имя, а тут три разные функции одинаково им называются.
    Ответ написан
    1 комментарий