An error occurred during the compilation of a resource required to service this request
Selamlar,
.NET ile ilgili bir problem olarak gelen "An error occurred during the compilation of a resource required to service this request" hatasının birkaç çözümü var. Compiler hatası olarak bilinir, Compiler Error Message: CS0433 hatasını verir.
Şahsen bende şu şekilde vermişti:
Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
Compiler Error Message: CS0433: The type 'ASP.assetsadmin_sag_ascx' exists in both 'c:UsersRecepAppDataLocalTempTemporary ASP.NET Files oot8c10cadd975acbffApp_Web_swybihgq.dll' and 'c:UsersRecepAppDataLocalTempTemporary ASP.NET Files oot8c10cadd975acbffApp_Web_sag.ascx.8a0a91a6.xzueaw71.dll'
Bir Web User Control dosyasında hata vermişti.
Çözümler:
1. Şuradaki dosyaları silin: C:WindowsMicrosoft.NETFrameworkv4.0.30319Temporary ASP.NET Files
Eğer yine de çalışmıyorsa solution'daki bin and obj klasörlerinin içindeki tüm dosyaları silin, solution'ı tekrar rebuild edin.
2. Clean ve ReBuild Solution işlemleri işe yaramıyorsa, Local system'den application pool identity'i ApplicationPoolIdentity olarak değiştirin IIS'te. Işe yarayabilir.
3. Web.config dosyasına şuradaki kodları ekleyin.
Not: NuGet Packet Manager'a girip DotNetCompilerPlatform'u yükleyin, ardından ekleyin. Ekledikten sonra normal deneyin, eğer olmazsa eklersiniz.
4. Son olarak, hata detaylarında adı geçen dosyayı silin ve yeniden oluşturun. Bu şekilde de çözülebilir. Örneğin bendeki user control hatalıydı, sildim ve yeniden oluşturdum (farklı bir isimle). Düzelmişti.
Burada da çözümden bahsetmiş.
------- Yeni çözüm
5. çözümü henüz yeni keşfettim. Eğer web user controller hata veriyorsa, web user control'e girin bir ClassName ekleyin.
Örnek Sol bölüm için eklediğim bir web user control:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Sol.ascx.cs" Inherits="GorkemReklam.assetsAdmin.Sol" ClassName="Sol" %>
ClassName eklediğiniz takdirde hata vermemektedir.
---- Yeni çözüm, 6
6. Hala hata verebilir. En son çare olarak web.config dosyanızda
<system.web>
<compilation...
satırında compilation kısmına batch="false" ekleyin. Örnek kod:
<compilation debug="true" targetFramework="4.5" batch="false">
Umarım işe yarar.
Kolay gelsin,
Recep.
Mesaj 05.05.2016 23:51:35 tarihinde Rserit tarafından düzenlenmiştir.