2016-04-04 16 views
0

Bir sınıf oluşturdum ve App_Code klasörüne yerleştirdim. Web.config dosyasından erişmeye çalıştığımda, bir istisna alıyorum: Profil varsayılan sağlayıcısı bulunamadı.App_Code klasöründe yer alan bir sınıf nasıl bir web.config bölümünden mi alınır? İsim alanı ne olurdu?

<profile defaultProvider="SqlProvider" inherits="CustomUserProfile"> 
    <providers> 
     <clear /> 
     <add name="ProfileProvider" 
     connectionStringName="LocalSqlServer" 
     type="System.Web.Profile.SqlProfileProvider, 
     System.Web, Version=4.0.0.0, 
     Culture=neutral, 
     PublicKeyToken=b03f5f7f11d50a3a" 
     description="SqlProfileProvider extra fields" 
     applicationName="/" /> 
    </providers> 
    </profile> 

Bu kodu eklediğinizde:

<profile defaultProvider="SqlProvider" inherits="MyApp.App_Code.CustomUserProfile"> 

farklı bir hata alıyorum.

Compiler Error Message: BC30002: Type 'MyApp.App_Code.CustomUserProfile' is not defined. 

App_Code klasöründe bulunan bir dosya için ad alanının ne olduğunu bilmek ister misiniz?

Yardımınız için teşekkür ederiz.

+0

MyApp.CustomUserProfile – cableload

+0

App_Code' olan önceki hatayı, beni geri koyar' Çıkarma deneyin .' – Richard77

+1

Niçin sınıfın etrafında bir ad alanı eklemeyin ki, ne olacağını açıkça bilmelisin? – mason

cevap

1

DefaultProvider böyle sağlayıcılar eklenen isim eşleşmesi gerekir: `profili varsayılan sağlayıcı bulunamadı:

<profile defaultProvider="ProfileProvider" inherits="CustomUserProfile"> 
+0

İki tane iki değişiklik yapıyorum. 1) diğer bazı yerlerde önerildiği gibi, derleme için derleme eylemini değiştirin 2) projenin adını bu tür sınıfın adına girin: inherits = "MyApp.CustomUserProfile" '. Bunun yanı sıra, büyük sorun da işaret ettiğimiz şeydir, yani içeriğe dikkat etmeden sadece kopyalayıp yapıştırdım. Varsayılan sağlayıcı adı, eklediğim sağlayıcı ile aynı olmalıdır. Çok teşekkür ederim. – Richard77

İlgili konular