Frage

Ich bin eine kleine Konsolenanwendung in C # zu schreiben, dass Verweise eine benutzerdefinierte Assembly, dass Geräte benutzerdefinierte .net Profil-Anbieter. Ich habe die folgenden Abschnitte meiner app.config-Datei hinzugefügt, die die benutzerdefinierte Klasse referenziert und Montage.

<system.web>
<profile defaultProvider="MyCompanyProfileProvider" inherits="MyCompany.Web.User.GenericProfile" automaticSaveEnabled="false">
    <providers>
        <clear/>
        <add name="MyCompanyProfileProvider" connectionStringName="defaultDatabase" applicationName="/myApplication" type="MyCompany.Web.ProfileProvider, MyCompany.Web"/>
    </providers>
    <properties>
        <add name="JobRoleId" type="System.Int32"/>
        <add name="LastCompetencyId" type="System.Int32" defaultValue="0"/>
        <add name="MixSettings" type="System.Xml.XmlDocument"/>
    </properties>
</profile></system.web>

Allerdings, wenn ich die App im Debug-Modus ausführen ich die folgende Fehlermeldung erhalten, als ob es in den System.Web Versammlung statt einem bestimmten in der app.config-Datei suchen.

Typ konnte nicht geladen werden 'MyCompany.Web.User.GenericProfile' aus Assembly 'System.Web, Version = 2.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a'.

Ich habe einen lokalen Web-App, dass verwendet auch die Montag und kundenspezifische Profil-Provider und dass die Arbeit ohne Probleme. Ich habe die referenzierte geprüft Baugruppe wird in das Ausgabeverzeichnis kopiert werden.

Irgendwelche Ideen ??

War es hilfreich?

Lösung

Ich fand schließlich die Antwort auf diese Frage, und es war so einfach !! (Er sagt, nach Stunden des Suchens und Debugging).

Ich habe gerade explizit in dem Zusammenbau residierten meine benutzerdefinierten Anbieter sagen, zu erzählen. Ich dachte, ich nur das tun musste, wenn die Art angeben, wenn die Anbieter hinzufügen.

Allerdings müssen Sie festlegen, wenn Ihr Profil in dem inherits Attribute definieren. Wie so:

Bevor:

<profile defaultProvider="MyCompanyProfileProvider"
         inherits="MyCompany.Web.User.GenericProfile"
         automaticSaveEnabled="false">

Nach:

<profile defaultProvider="MyCompanyProfileProvider" 
         inherits="MyCompany.Web.User.GenericProfile, MyCompany.Web" 
         automaticSaveEnabled="false">

Hope, das hilft jemand anderes in der Zukunft mit dem gleichen Problem.

Andere Tipps

Versuchen Sie, den zusätzlichen Platz hinter dem Komma zu entfernen, wo Sie Ihre Klasse angeben und Montag, aber ich glaube nicht, dass es beheben.

Ihre App suchen Ihre eigene Klasse in der System.Web bis Montag, was sehr seltsam ist.

Ich würde verwenden fuslogvw Brauchen Sie mehr Informationen über das Scheitern.

Ihre Lösung rettete mir leid a * se, nachdem ich WASTED Tage meiner kostbaren Zeit der Jagd nach diesem Problem. Wie üblich habe ich DAYS kämpfen WASTED Microsoft-Produkte anstelle der tatsächlichen IT-Probleme, die ich brauchen, um sich zu lösen. Meine App.Config Linien sehen jetzt so, und es scheint zu funktionieren:

<profile defaultProvider="DefaultProfileProvider" inherits="SmartTariffs_V13.ProfileCommon, SmartTariffs_V13">
  <providers>
    <add name="DefaultProfileProvider" type="System.Web.Providers.DefaultProfileProvider, System.Web.Providers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" connectionStringName="DefaultConnection" applicationName="/" />
  </providers>
</profile>

Wo SmartTariffs_V13 der Name des Projekts ist und SmartTariffs_V13.ProfileCommon ist der Name der CS-Datei innerhalb dieses Projekts. Ich fand diese Arbeiten ohne Ihre "automaticSaveEnabled" Tag hinzufügen, aber hey ho ...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top