Помилка компіляції: Тип 'ASP.global_asax' існує в обох бібліотеках DLL


78

Я щойно інтегрував ще одну сторінку проекту та його dll у контейнер / папку свого існуючого проекту. Моя рамка проекту - 3,5. Коли я намагаюся створити проект або рішення, він видає таку помилку:

"Тип 'ASP.global_asax' існує в обох 'c: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Temporary ASP.NET Files \ timesheet \ 15a75c54 \ 898b48b9 \ Assembly \ dl3 \ 58b062b2 \ 00ceda54_c98cc801 \ App_global.asax .DLL 'і' c: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Тимчасові файли ASP.NET \ timesheet \ 15a75c54 \ 898b48b9 \ App_global.asax.q_h6dbfx.dll 'c: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Тимчасові файли ASP.NET \ timesheet \ 15a75c54 \ 898b48b9 \ App_Web_admin.master.fdf7a39c.zecazgwd.0.cs "

Встановлення "batch = false" у web.config не працює. Я також намагався видалити всі папки з "c: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ Тимчасові файли ASP.NET \", після чого очистити та відновити душу. Але все одно це не працює.

Відповіді:


154

У моєму випадку проблема виникла у папці кошика віртуального додатка. Заглянувши в цю папку для сміття, ви, мабуть, побачите два файли (інформацію, яку я знайшов тут ):

  • App_global.asax.dll
  • App_global.asax.compiled

Видалення цих помилок усуває помилку. App_global.asax.dll також генерується під час виконання, що і спричиняє проблему. Однак я все ще вивчаю, як ці файли потрапили туди, тому коментарі, безумовно, вітаються!


25
Як би ці файли могли туди потрапити, якщо в одному з ваших розгортань ваші налаштування публікації включали параметр «Попередньо
скомпілювати

3
@BornToCode Ти врятував мій день !! :)
Алессандро

1
У моєму випадку попередньо компіляція під час публікації вже була вимкнена. Після видалення файлів вони не повернулись, і веб-сайт знову запрацював. Увімкнення попередньої компіляції призвело до створення файлів ... але веб-сайт тоді продовжував працювати ?!
Кріс Невілл,

Ві-е-е-е! Дякую!
MarceloBarbosa

3
Після публікації за допомогою "Precompile" включений вирішив цю проблему
Джо 89,

11

Я пропоную вам піти шляхом: C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Filesі очистити всі тимчасові файли програми, побудувати рішення, а потім запустити його!


3
Наскільки я бачу, автор спробував це, і це не працює. FWIW У мене така ж проблема, як і у OP, і видалення тимчасових файлів не працює, як і встановлення batch = false у web.config
Morten Jensen,

7

У моєму випадку проблема була викликана випадковим видаленням "PrecompiledApp.config". Як тільки я повернув файл, все почало працювати нормально.


3

Я деякий час боровся з цією проблемою у .NET 4.5 у VS2013, перш ніж знайти рішення, яке спрацювало:

  • Видалення вмісту binпапки проекту ASP.Net вручну. Очищення / відновлення було недостатнім. Очевидно, він видалив недостатньо;)

Помилка не зникала після додавання batch="false"атрибута в compilation-element web.config.

Також не допомогло видалення ASP.Net Temporary Files-директорії.


це спрацювало і для мене, тоді як видалення тимчасової папки не зробило
більш терміновим є жарт




0

Нещодавно виникла та сама помилка при публікації сайту з налагоджувального ПК на сервері. Змінення параметра на істинний вирішив проблему.

<DeleteExistingFiles>True</DeleteExistingFiles>

файл ~ \ Properties \ PublishProfiles \ FolderProfile.pubxml


0

Моя проблема полягала в тому, що я посилався на стандартний проект .net у своєму фреймворковому проекті .net, не знаючи, де він конфліктував.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.