Помилки при упаковці проекту Azure, якщо ContentDirectory містить подібні файли

Я намагаюся використовувати функцію SourceDirectory у файлі "Визначення служби", щоб спочатку копіювати вміст каталогу "Base" у веб-роль, а потім вміст "AdditionalFiles". Це відмінно працює для налагодження в Azure, однак при упаковці рішення я отримую помилку Accessed Denied, коли пакується рішення, якщо папка AdditionalFiles містить файл в тому ж місці, що і в каталозі Base.

Помилка 7 Доступ до шляху "C": Користувачі Alex AppData Локальний Темп для ролей Робота TestWebRole1 Примітка: connectionStrings.config 'заборонено. C: Програмні файли (x86) MSBuild Microsoft VisualStudio v10.0 Інструменти Windows Azure 1.5 Microsoft.WindowsAzure.targets 2

Щоб поставити це в контекст, я працюю над переходом існуючої програми на роботу в Azure. Перший крок, який я роблю, полягає в тому, щоб просто обернути існуючу функціональність, щоб вона просто запустилася в блакитному. Крім того, оригінальна кодова база швидко змінюється, тому я хочу, щоб мої налаштування упаковки були дуже окремими, щоб уникнути необхідності постійно мати справу з об'єднанням.

Нижче наведені файли ServiceDefinition, які я використовую, а також структуру каталогів мого рішення. Я також зіткнувся з такою ж проблемою під час використання Робочої Ролі.

<?xml version="1.0" encoding="utf-8"?>

  
    
      
        
      
      
        
      
    
    
      <inputEndpoint protocol="http" port="80" name="Http" />
    
  

І структуру каталогів (на основі виводу команди дерева, з вмістом папок bin і obj видалено):

│   AzureSourceDirectoryTest.sln
│   
├───AdditionalFiles
│       connectionStrings.config
│       
├───AzureSourceDirectoryTest
│   │   AzureSourceDirectoryTest.ccproj
│   │   AzureSourceDirectoryTest.ccproj.user
│   │   ServiceConfiguration.Cloud.cscfg
│   │   ServiceConfiguration.Local.cscfg
│   │   ServiceDefinition.build.csdef
│   │   ServiceDefinition.csdef
│   ├───bin...                              
│   └───obj...
│
├───Base
│       connectionStrings.config
│       
└───TestWebRole1
    │   TestWebRole1.csproj
    │   TestWebRole1.csproj.user
    │   
    ├───bin...
    ├───obj...
    └───Properties
            AssemblyInfo.cs
2

1 Відповіді

Я не впевнений, що таке має робити . Який connectionStrings.config повинен фактично включатися? Моє припущення полягає в тому, що воно копіюється з двох різних розташувань одночасно, а один виходить з ладу через одночасний доступ. Чи можна запитати, чому ви копіюєте один і той же файл двічі?

0
додано
Сценарій, в якому я працюю, полягає в тому, що я переношу існуючу програму для запуску в Azure. Тому я намагаюся зберегти свої модифікації окремо до фактичної програми: 1) Копіювати базову програму у веб-роль 2) Копіювати мої додатки поверх того, що було скопійовано в 1 Якщо просто налагоджувати за допомогою Visual Studio, вищезгадане працює як Очікується (хоча з попередженням компілятора про те, що файл connectionstrings.config був замінений). Тільки при публікації/розгортанні я отримую цю помилку доступу.
додано Автор Alex, джерело