14. april 2004 - 11:54Der er
9 kommentarer og 2 løsninger
problemer med webservice i webmatrix
Hej. Jeg prøver at lave en metode i webmatrix, der returner System.Data.SqlClient.SqlDataReader. Men i stedet returner den System.Data.IDataReader, som giver problemer: "Cannot serialize interface System.Data.IDataReader". Jeg bruger Matrix til at lave metoden. Hvad kan jeg gøre?
[WebMethod] public System.Data.IDataReader MyQueryMethod() { string connectionString = "server=\'sqlsrv\'; trusted_connection=true; database=\'book\'"; System.Data.IDbConnection dbConnection = new System.Data.SqlClient.SqlConnection(connectionString);
string queryString = "SELECT [Room].[RoomType], [Room].[RoomPrice] FROM [Room], [Hotel] WHERE (([Hotel]" + ".[Id] = [Room].[HotelId]) AND ([Hotel].[Id] = 1))"; System.Data.IDbCommand dbCommand = new System.Data.SqlClient.SqlCommand(); dbCommand.CommandText = queryString; dbCommand.Connection = dbConnection;
Nej. webmatrix laver det hele for mig. Jeg kan vælge mellem at returner System.Data.DataSet eller System.Data.SqlClient.SqlDataReader. Hvis jeg vælger System.Data.SqlClient.SqlDataReader laver den i stedet oven stående metode
arg.. ja... autogeneret kode... :/ det eneste VS skal gøre er at skrive de skide koordinater når kontroller skal placeres på en form, resten skal den ikke blande sig i :)
Du har nok ret i at man ikke kan serializer en SqlDataReader: public sealed class SqlDataReader : MarshalByRefObject, IEnumerable, IDataReader, IDisposable, IDataRecord
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.