J'utilise les méthodes de page ASP.Net Ajax et le problème est que la définition d'une énumération n'est pas affichée. Voici ce que j'ai:Les définitions d'objet ne sont pas affichées pour les méthodes de page ASP.Net
public class Contact
{
public string FirstName{get;set;}
public IList<PhoneNumber> PhoneNumbers{get;set;}
}
public class PhoneNumber
{
public string Number{get;set;}
public PhoneNumberType {get;set;}
}
public enum PhoneNumberType
{
Home,
Work,
Fax,
Cell
}
J'ai ensuite une méthode web simple comme:
[WebMethod]
public static Contact GetContact(Guid id)
{
return ....;
}
Du côté client je me retrouve avec une classe MyNamespace.Contact; cependant, je n'ai pas de MyNamespace.PhoneNumber ou MyNameSpace.PhoneNumberType. J'ai trouvé que si j'ajoute explicitement de fausses webmethods qui retournent juste ces types alors les types côté client sont rendus. Existe-t-il un moyen de forcer cette énumération à rendre d'autres méthodes que de fausses web?
Je veux l'énumération parce que j'ai besoin de parcourir cette liste <> et basé sur le PhoneNumberType faire quelque chose de différent. Je préfère ne pas coder en dur les nombres magiques ou coder en dur la deffinition enum.