Задать вопрос
  • По какой причине появляеться SqliteException: SQLite Error 19: 'NOT NULL constraint failed?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Исправьте вот здесь:
    [Column("profilePicturePath")]
        public string? ProfilePicturePath { get; set; }

    Пояснение. В документации по EF Core написано:
    Если включены ссылочные типы, допускающие значение NULL, свойства будут настроены на основе nullability C# для типа .NET: string? будут настроены как необязательные, но string будут настроены по мере необходимости.

    В современных шаблонах проектов nullability включена по умолчанию, так что ваш тип свойства string EF понимает как то, что соответствующая колонка записи должна иметь ограничение NOT NULL. А потому вам следует использовать в качестве типа свойства string? .
    Ответ написан
    1 комментарий
  • Почему пользователь остается локальным администратором при добавление в AD?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Похоже, тут требуются разъяснение:
    пользователь (системная сущность, которая имеет логин с паролем, членство в группах и привилегии в системе) и профиль пользователя (набор связанных - с пользователем папок и файлов, включая дополнительные файлы реестра) - это разные вещи. А локальный пользователь и пользователь из домена - это разные пользователи.
    От того, что вы назначили с помощью User Profile Wizard доменному пользователю тот же профиль (т.е. набор файлов), что и локальному, локальный пользователь, со всеми своими правами, никуда не делся. Если он вам больше не нужен - просто отключите его (в консоли Управление компьютером). А чтобы доменный пользователь мог войти на компьютер локально при отсутсвии связи с контроллерами домена (если это требуется) - не запрещайте (по умолчанию оно разрешено) кэширование учетных данных в групповой политике домена, действующей на этот компьютер и зайдите хотя бы раз под этим пользователем на этот компьютер.
    Ответ написан
    Комментировать
  • Где я ошибся в двойних интегралах?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Вы сделали верхний предел внешнего интеграла функцией от y - вот и получили функцию от у
    Поменяйте пределы: во внутренем интеграле нижний предел будет x^2, а во внешнем верхний - 1 (абсциссса точки пересечения параболы и прямой).
    Ответ написан
    Комментировать
  • Как настроить авторитативный сервер DNS?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Что нужно сделать, чтобы объявить эту связку авторитативным DNS-сервером?

    Как минимум, заменить stub-зону полноценной вторичной зоной, содержащей все записи зоны. Возможно этого будет даже достаточно.
    Ответ написан
  • Можно ли использовать excel файлы для генерации представлений в ASP проекте?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Идея генерировать содержимое HTML на основе внешних данных - она правильная. И шаблоны Razor (.cshtml) предоставляют для этого очень удобные средства, кстати. Так что хранить данные в самих шаблонах - это неправильная идея (вы в этом уже убедились, да).
    По поводу вашего предложения, как зранить данные, у меня есть совет: экспортируйте эти файлы из Excel в формат техта с разделителями (например, CSV, а я лично предпочитаю в качестве разделителей знаки табуляции). Это - обычные тектовые файлы, которые можно, при необходимости, править и без Excel (хоть в Блокноте), а для больших правок - импортировать в Excel. И всякие средства для контроля версий, типа Git - они с текстовыми файлами работают значительно лучше, чем с файлами excel.

    PS Как вам правильно написал в комментарии Sergey В. , для хранения данных лучше использоваь базу данных. Вы особенно это оцените, если функциональность проекта будет расширяться. А внешние файлы - хоть Excel, хоть текстовые - это эрзац-решение. Но если для вас это терпимо, а использовать БД в проекте вам сложно, то используйте файлы.
    Ответ написан
  • Можно ли сделать два почтовых сервера, если нет ящика идти на второй сервер?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Как реализовать нужный вам сценарий - смотрите в документации Microsoft
    Ответ написан
    Комментировать
  • Почему при перемещении сообщений они не исчезли с сервера?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Заглянул через OWA - все сообщения на месте.

    Outlook подключен в режиме кэширования (сейчас это - по умолчанию)? Тогда, значит, кэш с п/я у вас не синхронизовались.
    Ответ написан
  • В каких случаях создавать новые контроллеры?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Одно из сображений, касающееся производительности. Контролллер - это класс, который создается каждый раз для обработки запроса.
    Поэтому имеет смысл смотреть на сервисы-зависимости в его конструкторе (параметры конструктора, которые извлекаются из контейнера сервисов): если действия этого контроллера используют разные зависимости, особенно - с временем жизни Scoped (DatabaseContext, к примеру) или Transient, то эти действия - хорошие кандидаты на перенос в отдельный(е) контроллер(ы).
    Ответ написан
    Комментировать
  • C# 7.3 Как мне вызвать асинхронный метод, находящийся в отдельном файле?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Task (задача) - это не Thread. Это спрецифичный для исполняющей системы (CLR) .NET объект, который позволяет отследить завершение выполнения операции, выполняющейся независимо от вашего основного потока управления и получить результат выполнения, если он есть (в вышем случае результата нет). Для запуска задачи, которую возвращает асинхронный метод (в отличие от вновь созданного объекта задачи - new Task(...)) ничего делать не нужно - она уже запущена исполняющей системой. Поток (Thread) для ее выполнения, если он нужен (а нужен он не всегда, иногда задача завершается внутри асинхронного метода синхронно) обычно берется из пула потоков (но могут быть нюансы, если они вам интересны - читайте про SynchronizationContext).
    Если вам нужно дождаться выполнения задачи в синхроннном коде (у вас сейчас такой), то следует использовать метод задачи Wait(), но он заблокирует основной поток. Альтернатива для современного .NET (7.3 для этого достаточно современный) - использовать асинхронный метод Main: просто указать static async Task Main() вместо static void Main. Тогда можно дожидаться выполнения Install асинхронно, с помощью операции await: await update.Install(); При этом основной поток блокироваться не будет, но если ему все равно делать нечего (это зависит от типа приложения), то выигрыша от этого не будет (в консольном приложении, например).
    PS Зачем вы применили атрибут [STAThread] к метод Install? Ведь, согласно документации
    Примените этот атрибут к методу точки входа (Main()метод в C# и Visual Basic). Это не влияет на другие методы
    То есть, он тут бессмысленнен. И вообще, это - тяжкое наследие технологии OLE2/COM.
    Ответ написан
    1 комментарий
  • Один или несколько проектов в решении не были загружены?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Вам нужен ответ на вопрос в заголовке?
    Если так, то да, проект C:\Users\Acer\Downloads\Imash.App\Imash.App.csproj не был загружен: вероятно отсутсвует одна из папок в пути. Можете сами проверить в Проводнике, какая именно.

    PS Или вы что-то другое спросить хотели?
    Ответ написан
    1 комментарий
  • Как тут найти функцию площади?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Типо ето же окружность...

    Нет, сечение вашей фигуры плоскостью z=const - это сегмент круга, ограниченный полуокружностью x^2+y^2=9 (y>=0) и хордой y=z. Его площадь от z зависит. Подставляйте формулу для площади этого сегмента (это и будет S(z)) и интегрируйте ее по z от 0 до 3.
    Ответ написан
    3 комментария
  • Резервное копирование журнала транзакции ms sql. Автоматически. Растет журнал транзакций. Сжатие это удаление?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Простой рецепт для простых случаев (никакой репликации).
    Сделать 2 раза с небольшим промежутком следующее:
    - выполнить резервное копирование журнала;
    - обрезать журнал с хвоста (truncate).
    Если предполагается использовать журнал для восстановления (к текущему состоянию или к точке во времени) о сделанные резервные копии журнала надо сохранить.
    Ответ написан
    2 комментария
  • Как восстановить работу Active Directory в связке Mikrotik + Windows Server?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Сервер DHCP может быть где угодно. Но он обычно раздает адреса серверов DNS для клинтов. И для работы AD это критично. Общее правило: на клиентах в списке серверов DNS не должно быть серверов, которые не знают про домен AD. В списке серверов DNS должны быть только контроллеры домена (КД) или серверы/прокси DNS, которые переадресуют запросы к именам из этого домена на КД.
    Простейший вариант этого правила, для начинающих: в списке серверов DNS на членах домена должны быть только КД.
    Ответ написан
    Комментировать
  • Хабр недоступен у некоторых провайдеров?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Видел у себя такое недавно, ЕМНИП - в субботу. Ну, я к интернетам и авариям в них привычный, так что перетерпел немного - дальше все заработало.
    И, думаю, что про это писать надо не сюда, а в техподдержку Хабра.
    Ответ написан
    Комментировать
  • Как сделать резервную копию и восстановление ms exchange 2013?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Для получения ответа на столь обще поставленные вопросы имеет смысл сначала прочесть документацию произовдителя.
    В целом, вы понимаете правильно: подавляющая часть конфигурации Exchange хранится в AD, а потому резервное копирование сервера Exchange состоит, в основном, из резервного копирования данных (БД), а восстановление - в установке сервера Exchange в режиме восстановления и восстановлении БД. Но может потребоваться сохранение/восстановление нестандартных настроек служб (если есть), плюс, что-то надо делать с сертификатами: либо тоже сохранять/восстанавливать, либо перевыпускать после восстановления. Подробности см. в документации.
    Для резервного копирования БД Exchange вполне достаточно встроенного Windows Server Backup (описано в документации). Сторонние программы предоставляют дополнительные удобные средства для управления резервными копиями, однако стоят денег. Так что, нужны они вам, или нет -разбирайтесь сами по месту.
    И напоследок - имейте ввиду, что Exchange сильно зависит от AD, поэтому о сохраненности ее данных надо обязательно позаботиться.
    Ответ написан
    1 комментарий
  • Почему некорректно работает параметр маршрутизатора Razor Pages?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Параметры маршрута привязываются к параметрам метода обработчика страницы по имени, т.е. их имена в директиве @page в шаблоне страницы и в списке параметров метода в коде должны совпадать.
    А у вас в @page используется id, а в списке параметров OnGet - pageId. Переименуйте что-нибудь, чтобы имена одинаковые были - и будет вам счастье.
    Ответ написан
  • Почему если t^2 второго порядка малости, то разложение по маклорену токо до 2 членов (f(t) = f(0) + f'(0)*t/1!)?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Патамушта матан. Остальная часть ряда (если ряд сходится, конечно) при t->0 имеет порядок величины o(t) и при достаточно малых t ей можно пренебречь.
    PS Про то, что ряд сходится, в решении не написано (патамушта это физика, а не матан), но он таки сходится: он - знакопеременный.
    Ответ написан
    1 комментарий
  • Как предоставить группе Администраторы полные права?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    По умолчанию пользователи из гурппы Администраторы работают в режиме с пониженными привилегиями, где членство в этой группе используется только для проверки запрета. Проводник тоже имеет эти пониженные привилегии. Называется этот механизм UAC (User Account Control). В принципе, программы могут запрашивать повышенные привилегии через этот самый UAC (при запуске, к примеру), но у Проводника с этим плохо.
    Если UAC вам мешает, его можно отключить, разными способами - через Панель управления, групповую политику, через реестр. В разных версиях Windows это делается немного по-разному, поэтому лучше поищите рецепт для вашей версии по ключевым словам "отключить UAC".
    PS На сервере управление общими папками и разрешением на них обычно делается специальной программой, она уже заранее работает в режиме с поышенными привилегиями.
    Ответ написан
    1 комментарий
  • Не могу подключиться к сетевым папкам на сервере, почему?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Ошибка - не в протоколе доступа (SMB), а в аутентификации/авторизаци.
    Для поиска включите (если не включен) на сервере аудит удачных и неудачных попыток входа в систему, и смотрите, под каким пользователем идут попытки подключения.
    Если под анонимным - проблема в аутентификации. Т.к. при подключении по IP используется только NTLM, то смотрите, чтобы на клиенте и на сервере использование NTLM не было ограничено политиками и на ошибки от Сетевого входа в систему (NetLogon) в журнале Система на сервере.
    Если под конкретным пользователем, то для начала смотрите, под ожидаемым ли пользователем происходит вход. Если нет - разбирайтесь на клиенте, нет ли там сохраненных учетных данных для взода на сервер. Если да -смотрите в политиках, на наличие у него прав на вход в систему по сети: входит ли он в группу тех, кому доступ разрешен, и не запрещен ли доступ персонально ему (это две независимые настройки).
    Ответ написан
    Комментировать
  • Как сделать так, чтоб на компьютере у клиента внутри домена была квота на его локальный диск С?

    @mvv-rus
    Настоящий админ AD и ненастоящий программист
    Через групповую политику: Конфигурация компьютера/Административные шаблоны/Система/Дисковые квоты
    Ответ написан
    Комментировать