На главную
ПРАВИЛА FAQ Помощь Участники Календарь Избранное DigiMania RSS
msm.ru
Модераторы: maxim84_, juice
  
> Зависимости в Net
    Создаю библиотеку NetStandard, добавляю туда пакет System.Data.SqlClient(4.6.0).
    Всё компилируется, но эта зависимость не переезжает в папку Bin\Debug.

    Создаю консольное приложение, например, на Net4.7.1,
    добавляю ссылку на проект NetStandard,

    Запускаю debug и на вызове метода из библиотеки NetStandard студия пишет, что не найдена System.Data.SqlClient(4.5.0).

    Вопросы:
    - как собирать библиотеки NetStandard со всеми зависимостями в одну папку?
    - почему даже студия не подхватила корректно зависимости?
    Intel Core i7 2600K, 16Gb
    Windows 7 Максимальная Service Pack 1
    Индекс производительности: 7,7-VIDEO, 7,8-CPU&RAM, 7,9-HDD
      Попробуй Publish сделать. Или Публикация, в зависимости от локали студии.
        почему-то не добавляются Nuget-пакеты в каталоги сборки и публикации.
        почему так происходит? как приложения распространять?

        если что, в VS2017 есть в контекстном меню преобразовать проект до ProgectReference в файле проекта.
        типа ссылки на Nuget пакеты обрабатывает msbuild.
        потом начинает как-то искать библиотеки.
        Сообщение отредактировано: nash -
        Intel Core i7 2600K, 16Gb
        Windows 7 Максимальная Service Pack 1
        Индекс производительности: 7,7-VIDEO, 7,8-CPU&RAM, 7,9-HDD
          я не понимаю, как шаманить надо, был и был dll hell, хотели от него избавиться, но появилось еще больше hell.
          roslyng, видимо, внес свою лепту.
          проекты не запускаются даже в студии под дебагом.
          куда всё это идёт.
          Intel Core i7 2600K, 16Gb
          Windows 7 Максимальная Service Pack 1
          Индекс производительности: 7,7-VIDEO, 7,8-CPU&RAM, 7,9-HDD
            Цитата nash @
            почему-то не добавляются Nuget-пакеты в каталоги сборки и публикации.
            почему так происходит? как приложения распространять?

            Ну попробуй прямо командой <nuget имя пакета> выкачать пакеты. Если бы у тебя пакеты не выкачивались - у тебя ничего бы не собралось. Если собирает, значит пакеты выкачались.
            Для того чтобы сделать приложение со всеми пакетами - тебе нужно опубликовать его.

            Там ты указываешь каталог, куда будут помещены бинарники. Далее все твои библиотеки вместе с зависимостями копируются в этот каталог.
            Я не понимаю что у тебя конкретно не получается?


            Цитата nash @
            проекты не запускаются даже в студии под дебагом.
            куда всё это идёт.

            Компилируются, но не запускаются? Какую ошибку при этом пишет? Это слишком размытый вопрос. Однозначно ответить в чем конкретно у тебя проблема - сложно.
            Может быть у тебя какие то компоненты для .Net core отсуствуют? Может быть студия слетела? Библиотеки слетели? Может ты что то не так делаешь? Может ты что то недоустановил?

            Создай обычное консольное приложение .net core, и попробуй его опубликовать:

            Вот берешь выделяешь свой проект, потом жмешь правой кнопкой мыши по нему и выбираешь Publish:
            Прикреплённый файлПрикреплённый файлpublish_example.jpg (114,94 Кбайт, скачиваний: 132)
            Сообщение отредактировано: Wound -
              Потом переходим в папку, видим наше приложение. Если бы были другие зависимости, они оказались бы в этой папке. А так проект пустой, зависимостей нет. Видим нашу сборку только.
              Прикреплённый файлПрикреплённый файлpublish_location.jpg (150,03 Кбайт, скачиваний: 110)
                да, конечно, всё это делал.
                конкретно, хотел T4 хелпер написать для генерации модели БД.
                ну и вот, то одно, то другое.
                хостинг приложение VS, и вот не получается сгрузить все зависимости в Winlibrary или NetStadartLibrary.
                с учетом того, что модель генерится в виде строки в Razor.
                вышел из положения созданием консольной утилиты, вывод которой направлен в dll, которая в T4 подключена.
                такой велосипед.
                это сделал давно, сейчас просто переписал генерацию с EntityFrameworkCore на System.Data.SqlClient в NetStandart.
                Intel Core i7 2600K, 16Gb
                Windows 7 Максимальная Service Pack 1
                Индекс производительности: 7,7-VIDEO, 7,8-CPU&RAM, 7,9-HDD
                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                0 пользователей:


                Рейтинг@Mail.ru
                [ Script Execution time: 0,0803 ]   [ 18 queries used ]   [ Generated: 18.07.19, 19:34 GMT ]