J'essaie de récupérer xml d'une petite fonction dans ma page .cshtml. C'est en me jetant une erreur. Cependant, cela fonctionne bien dans un environnement console/formulaire.ASP.NET 4.0 - La conversion a échoué lors de la conversion d'une chaîne de caractères en identifiant unique!
Il prend 3 paramètres et 1 exception.
myDll.GetXML(year, username, uniqueidentifier, out ex);
Quand je lance cette page je reçois l'erreur, « Échec de la conversion d'une chaîne de caractères à uniqueIdentifier. »
ou une pile de ...
System.Data.SqlClient.SqlException (0x80131904): Conversion failed when converting from a character string to uniqueidentifier.
at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning()
at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)
at System.Data.SqlClient.SqlDataReader.ConsumeMetaData()
at System.Data.SqlClient.SqlDataReader.get_MetaData()
at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, String srcTable)
at System.CapTool.Server.DAL.DAL.GetCapabilitiesXML(Int32 fiscalYear, String majComId, String userName, Exception& exception)
Dans ma fonction GetXML il applique simplement les paramètres à une procédure de magasin. La procédure de magasin me renvoie mon objet. De là, je peux faire toutes les choses amusantes dans .cshtml.
Lorsque je saisis manuellement les valeurs à partir de SQL Management Studio, j'obtiens en fait le bon résultat. Encore une fois, lorsque je crée une application Window Form - je reçois aussi le bon résultat!
En ce qui concerne les pages .cshtml ou .aspx, la conversion a échoué.
J'ai déjà essayé de lancer le paramètre uniqueidentifier de procédure de stockage et il m'a quand même donné cette erreur.
Je pense ... Il a quelque chose à voir avec des identifiants uniques ... mais je ne sais pas quoi faire ...
Il serait utile si vous avez publié du code et/ou des données pertinentes. – LukeH
Fournissez le code qui appelle System.CapTool.Server.DAL.DAL.GetCapabilitiesXML (Int32 fiscalYear, Chaîne majComId, Chaîne nom_utilisateur, Exception et exception) – Tahbaza