J'ai un service web C# que j'appelle en utilisant jquery ajax. Cela fonctionne correctement, sauf lorsqu'une exception personnalisée est lancée dans la méthode Web. Pour une raison quelconque, les objets XmlHttpResponse responseText possèdent uniquement les propriétés de la classe Exception de base. Je me retrouve donc avec un objet json avec les propriétés suivantes: "ExceptionType", "Message" et "StackTrace"Comment sérialiser une exception personnalisée à json dans C#
Mon exception personnalisée a une propriété appelée "FieldErrors" qui n'apparaît pas dans la déclaration. Voici le code de cette classe:
[Serializable]
[XmlRootAttribute(Namespace = "http://www.mydomain.com/", IsNullable = false)]
public class ValidationException : Exception
{
public List<string> FieldErrors { get; set; }
public ValidationException(string message = null, Exception innerException = null) : base(message: message, innerException: innerException)
{
this.FieldErrors = new List<string>();
}
}
Mon but est d'obtenir la propriété « FieldErrors » pour apparaître dans la réponse JSON.
Je n'ai jamais travaillé avec les trucs JSON, mais cela aide-t-il si vous utilisez une 'SoapException'? –
Bonjour. Il semble que le SoapException n'aide pas :(. Je ne vois toujours pas la propriété personnalisée – fehays