2012-03-28 4 views
0

Ich versuche, Daten in SQL-Datenbank von einer ASP.net-Client-Website über eine gespeicherte Prozedur (mit DAAB) in einem WCF-Dienst in einem asp.net leer website.When gehostet ich versuche, Daten zu speichern, zu der DB ich die folgenden Fehlermeldung erhalten:konnte nicht eine gespeicherte Prozedur (mit DAAB) von einem Client (ASPX-Seite) zu einem WCF-Dienst

** 

- The server was unable to process the request due to an internal 
    error. For more information about the error, either turn on 
    IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute 
    or from the <serviceDebug> configuration behavior) on the server in 
    order to send the exception information back to the client, or turn 
    on tracing as per the Microsoft .NET Framework SDK documentation and 
    inspect the server trace logs. 

** 

Wenn ich zu debuggen versuche ich die folgenden Ausnahme erhalten: Aktivierungsfehler aufgetreten, während Sie versuchen, erhalten Instanz vom Typ Datenbank, die Taste "" in der code--

Database db = EnterpriseLibraryContainer.Current.GetInstance<Database>("MyInstance"); 

wo mein app.config ist

<?xml version="1.0"?> 
<configuration> 
    <configSections> 
    <section name="dataConfiguration" type="Microsoft.Practices.EnterpriseLibrary.Data.Configuration.DatabaseSettings, Microsoft.Practices.EnterpriseLibrary.Data, Version=5.0.414.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" requirePermission="true"/> 
    </configSections> 
    <dataConfiguration defaultDatabase="MyInstance"/> 
    <connectionStrings> 
    <add name="MyInstance" connectionString="Data Source=BLRKDAS307581\KD;Integrated Security=True;User ID=SAPIENT\kdas3;Password=ilove0LINUX" providerName="System.Data.SqlClient" /> 
    </connectionStrings> 
    <startup> 
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> 
    </startup> 
</configuration> 

Kann mir jemand dabei helfen? Vielen Dank im Voraus ...

+0

Sie sagen, die Konfiguration ist von app.config ... meinst du web.config? –

+0

Ich habe eine Klassenbibliothek erstellt, die die Datenbanktransaktionen enthält, die die notwendigen DB-Konfigurationen hat. Der Code in der CS-Datei sieht folgendermaßen aus: string result; Databasedb = EnterpriseLibraryContainer.Current.GetInstance "MyInstance"); DbCommand cmdObj = db.GetStoredProcCommand ("AddtoDB"); db.AddInParameter (cmdObj, "@FirstName", DbType.String, cust.FirstName); ........... db.ExecuteNonQuery (cmdObj); Ergebnis = db.GetParameterValue (cmdObj, "@strMessage"). ToString(); return result; fangen { Rückkehr ""; } } – Rain

Antwort

0

Standardmäßig liest EnterpriseLibraryContainer seine Konfiguration aus web.config für einen WCF-Dienst unter ASP.NET. Die Konfigurationsinformationen sollten in web.config angezeigt werden, es sei denn, Sie führen einige erweiterte Konfigurationsoptionen aus (z. B. FileConfigurationSource, umgeleitete Abschnitte, manuelle Laden von Konfigurationsdateien usw.).

+0

Ich habe den Inhalt der app.config in die web.config kopiert. Aber jetzt bekomme ich den folgenden Fehler !! System.ServiceModel.ProtocolException wurde vom Benutzercode nicht behandelt Nachricht = Der Inhaltstyp text/html; charset = utf-8 der Antwortnachricht stimmt nicht mit dem Inhaltstyp der Bindung überein (text/xml; charset = utf-8). Stellen Sie bei Verwendung eines benutzerdefinierten Encoders sicher, dass die IsContentTypeSupported-Methode ordnungsgemäß implementiert ist. Die ersten 1024 Bytes der Antwort waren: ' ..... – Rain

+0

Ich würde nur die Enterprise Library-Konfiguration der web.config hinzufügen; Es klingt wie die WCF-Konfiguration ist jetzt falsch (wurde es entfernt?). –

+0

Ich habe die Ent Lib Config der web.config hinzugefügt. Ich habe es aus der app.config entfernt. – Rain