2011-01-19 3 views
-1

У меня есть ASP.NET MVC веб-приложение, и у меня есть ссылка на SharpArch.Web (один из Sharp архитектуры сборок)Почему Visual Studio удаления несвязанных сборок из папки Bin при восстановлении

Когда я перестраиваю проект и запускаю его, исключение говорит мне, что (Newtonsoft.Json.dll) отсутствует в папке Bin, которая используется (SharpArch.Web), так что все в порядке, я скопировал это, и все хорошо работало.

Когда я снова пытаюсь перестроить проект, исключение будет сброшено снова, и удалена сборка (Newtonsoft.Json.dll)?

Почему это произошло? что визуальная студия связана с несвязанной сборкой? и FYI, VS не удаляет все, начиная с Bin, а всего лишь сборок !!!

и BTW Я не хочу добавлять ссылку на (Newtonsoft.Json.dll), я не хочу ссылаться на неиспользуемую сборку.

ответ

0

Я полагаю, что каталог Bin \ зарезервирован для mangling от Visual Studio. Вам нужно будет разместить свою сборку в другом месте.

+0

У меня есть папка Lib, и все мои необходимые сборки находятся в этой папке, и все мои проекты ссылаются на сборки в этой папке. –

+0

OP может захотеть исследовать «зондирование» ... –

+0

Прошу прощения, но я не понял, что вы подразумеваете под зондированием? –

1

У меня была такая же ситуация в одном решении, над которым я работал. Поэтому я вложил эти .dll в отдельную папку. В моем случае я назвал эту папку «ServerAssemblies». Затем я изменил файл проекта (.csproj в моем случае) и добавил цель «AfterRebuild». Таким образом, нет необходимости добавлять ссылки на неиспользуемые сборки в проект.

<Target Name="AfterRebuild"> 
    <ItemGroup> 
    <ExtraAssemblies Include="$(SolutionDir)ServerAssemblies\**\*.*"/> 
    </ItemGroup> 
    <Copy SourceFiles="@(ExtraAssemblies)" DestinationFolder="$(ProjectDir)bin\"></Copy> 
</Target>