Подтвердить что ты не робот

Аргумент ConnectionConnection-Web.config Connection String не может быть пустым или пустым. VS2013

Когда я развертываю свой проект с помощью "Опубликовать как Azure WebJob" с помощью Visual Studio 2013/update 4, я получаю ошибку в заголовке.

4b9b3361

Ответ 1

Исправлено удалением следующей разметки из файла .pubxml. Вы должны выйти/перезапустить VS после удаления разметки (или VS добавит его обратно).

<ItemGroup>
  <MSDeployParameterValue Include="$(DeployParameterPrefix)DefaultConnection-Web.config Connection String" />
</ItemGroup>

Ответ 2

Создайте файл Parameters.xml в корне Project со следующим содержимым:

<?xml version="1.0" encoding="utf-8" ?>
<parameters>
  <parameter name="DefaultConnection-Web.config Connection String"
      description="DefaultConnection"
      defaultValue="Server=tcp:x.database.windows.net,1433;Database=x_db;User [email protected];Password=z;Trusted_Connection=False;etc." tags="" />
</parameters>

Здесь также могут быть добавлены все остальные отсутствующие элементы конфигурации.

Ответ 3

У меня есть Visual Studio 2015 Update 3, и я столкнулся с той же проблемой. Решение, которое я нашел для меня, это следующее:

1) Откройте файл *.pubxml по свойствам → публикация профилей.

2) Найдите атрибут Path в разделе PublishDatabaseSettings:

<PublishDatabaseSettings>
      <Objects xmlns="">
        <ObjectGroup Name="eRecall.ETL.Models.erecallContext" Order="1" Enabled="False">
          <Destination Path="" />
          <Object Type="DbCodeFirst">
            <Source Path="DBContext" DbContext="eRecall.ETL.Models.erecallContext, eRecall.ETL" />
          </Object>
        </ObjectGroup>
      </Objects>
    </PublishDatabaseSettings> 

3) Введите значение атрибута Path для следующего:

<PublishDatabaseSettings>
      <Objects xmlns="">
        <ObjectGroup Name="eRecall.ETL.Models.erecallContext" Order="1" Enabled="False">
          <Destination Path="{deployment connection string}" />
          <Object Type="DbCodeFirst">
            <Source Path="DBContext" DbContext="eRecall.ETL.Models.erecallContext, eRecall.ETL" />
          </Object>
        </ObjectGroup>
      </Objects>
    </PublishDatabaseSettings>

4) Удалите существующее развертывание webjob в планировщике заданий Azure.

5) Повторно разверните webjob, перезапустите webjob из планировщика и начните работу без проблем!

Надеюсь, что это поможет.

Ответ 4

Причина проблемы
Измените имя строки подключения в Web.Config или/и добавьте новую строку подключения в Web.Config.

Решение

  • Выберите проект веб-сайта, щелкните его правой кнопкой мыши и нажмите публикацию.
    введите описание изображения здесь

  1. Нажмите ссылку настроек и во всплывающем окне выберите вкладку "Настройки"

  2. Снимите флажок use this connection string at runtime со всех строк подключения.

введите описание изображения здесь

  1. Нажмите кнопку Save, чтобы закрыть окно. (Нет необходимости перезапускать Visual Studio)
  2. Попробуйте опубликовать веб-сайт еще раз, и он должен опубликоваться без проблем.

ПРИМЕЧАНИЕ
Я использую VS 2017

Только для заметки
После того, как я сделал предыдущие шаги, я заметил, что файл .pubxml изменился автоматически. вот различие, которое было сделано (автоматически без какого-либо вмешательства со стороны меня)

Итак, я думаю, что это лучший способ, потому что это проще для разработчика, а также позволяет визуальной студии самостоятельно решать свои проблемы, не заставляя ее делать что-то конкретное.

введите описание изображения здесь