2009-05-13 25 views
10

Attualmente sto cercando di implementare una sezione di configurazione personalizzata in un progetto io sono impegnato con e non importa quello che cerco continuo a ricevere l'errore sotto:configurazione personalizzata Sezioni

{ "Si è verificato un errore durante la creazione del gestore della sezione di configurazione per pageAppearanceGroup/pageAppearance: Impossibile caricare il tipo 'Samples.AspNet.PageAppearanceSection' dall'assembly 'System.Configuration, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a'. (E: \ Three Nine Developments \ lastfm \ msdn \ msdn \ bin \ Debug \ Samples.Aspnet.vshost.exe.config linea 6) "}

ho copiato il codice da questa MSDN Artricle:

http://msdn.microsoft.com/en-us/library/2tw134k3.aspx

Ho ancora lo stesso errore.

Ho provato tutti i consigli/guida nei seguenti articoli ma senza successo.
http://www.evanclosson.com/devlog/bettercustomerrorsinaspnetcustomconfigurationsection

http://geekswithblogs.net/akraus1/articles/64871.aspx

Questo deve essere qualcosa di stupido che mi manca. Io sto usando Vista, potrebbe essere un problema? qualche oscura impostazione di sicurezza?

<configuration> 
    <!-- Configuration section-handler declaration area. --> 
    <configSections> 
    <sectionGroup name="pageAppearanceGroup"> 
     <section 
     name="pageAppearance" 
     type="Samples.AspNet.PageAppearanceSection" 
     allowLocation="true" 
     allowDefinition="Everywhere" 
     /> 
    </sectionGroup> 
    <!-- Other <section> and <sectionGroup> elements. --> 
    </configSections> 

    <!-- Configuration section settings area. --> 
    <pageAppearanceGroup> 
    <pageAppearance remoteOnly="true"> 
     <font name="TimesNewRoman" size="18"/> 
     <color background="000000" foreground="FFFFFF"/> 
    </pageAppearance> 
    </pageAppearanceGroup> 



</configuration> 
+0

Otterrete risposte migliori e migliori se taggate in modo appropriato, ovvero con le tecnologie che state utilizzando. –

+0

Sembra un problema con il tuo web.config, puoi pubblicare le sezioni pertinenti? – Jason

+0

Nope Config va bene, ho scaricato App.config e web.config Sono in grado di leggere appSettings da app.config e web.config jsut fine –

risposta

7

Dovresti anche controllare la serie di tre parti di Jon Rista su .NET 2.0 su CodeProject.

Altamente raccomandato, ben scritto e estremamente disponibile!

Marc

+0

Grazie sarà sicuramente dare un'occhiata a questi –

+0

Dai a un uomo un pesce e dargli da mangiare per un giorno, Mostragli come pescarlo e dargli da mangiare per il resto della sua vita. Grazie passerò con attenzione questi articoli –

+0

Ho letto questi articoli scaricati i progetti che eseguono senza problemi Quando provo a replicare il progetto falliscono ?? Non ho idea del perché –

19

La mia ipotesi è che hai copiato il codice, ma hai diversi nomi di assembly. Pubblicare la configurazione aiuterà.

Vorrei anche la qualità completa del tuo tipo nella configurazione (qualcosa che il campione non mostra). Qualcosa come ...

<section name="MySection" type="My.Assembly.Type, My.Assembly" /> 
+0

No, non è giusto. Ho chiamato correttamente gli assembly. Creato diversi progetti cercando di fare la stessa cosa –

+0

OK. Vedendo la definizione della sezione config aiuterà. –

+0

Completamente qualificante il Tipo ha fatto per me. Assicurati che tutti gli altri bit siano collegati a :) – brumScouse

1

Si prega di provare con il seguente codice:

<configSections> 
    <sectionGroup name="pageAppearanceGroup"> 
     <section name="pageAppearance" type="Samples.AspNet.PageAppearanceSection,Samples.AspNet" allowLocation="true"   allowDefinition="Everywhere"  /> 
    </sectionGroup>  <!-- Other <section> and <sectionGroup> elements. --> 
</configSections> 
1

Si prega di provare con questo

<configSections> 
<sectionGroup name="pageAppearanceGroup"> 
    <section name="pageAppearance" 
      type="Samples.AspNet.PageAppearanceSection,Samples.AspNet" 
      allowLocation="true" 
      allowDefinition="Everywhere" /> 
</sectionGroup> 
<!-- Other <section> and <sectionGroup> elements. --> 
</configSections> 

Grazie, Vedi

0

Così si scopre che quando si crea un progetto in Visual Studio, definisce automaticamente uno namespace root (il nome del progetto per impostazione predefinita) per il progetto. Pertanto, è necessario includere lo spazio dei nomi di root nel tipo di sezione e qualsiasi spazio dei nomi personalizzato definito nella classe delle impostazioni.

Per esempio, nel caso del poster originale una configurazione che lavora per loro possono essere guardato qualcosa di simile:

<section name="MySection" type="ROOT_NAMESPACE.Samples.AspNet.PageAppearanceSection, NAME_OF_ASSEMBLY" /> 

Dove ROOT_NAMESPACE e NAME_OF_ASSEMBLY sono definiti nelle proprietà del progetto, come mostrato in questa istantanea della mia progetto.

assembly name and root namespace visual studio

Nel mio caso particolare, non mi definisco in modo esplicito gli spazi dei nomi nel mio progetto. Quindi la mia configurazione di sezione aveva solo lo spazio dei nomi di root, il nome della classe delle impostazioni e il nome dell'assembly, in quanto tale;

<section name="programSettings" type="ShipmentImport.ProgramSettings, ShipmentImport" />  

So che è un paio di anni di ritardo, ma spero che mantiene qualcun altro da spendere ore su questo come ho fatto io.

Problemi correlati