Asp.net ajax 未为ASP.Net页方法呈现对象定义
我正在使用ASP.NETAJAX的页面方法,我有一个问题,枚举的定义没有被呈现。以下是我所拥有的:Asp.net ajax 未为ASP.Net页方法呈现对象定义,asp.net-ajax,pagemethods,Asp.net Ajax,Pagemethods,我正在使用ASP.NETAJAX的页面方法,我有一个问题,枚举的定义没有被呈现。以下是我所拥有的: public class Contact { public string FirstName{get;set;} public IList<PhoneNumber> PhoneNumbers{get;set;} } public class PhoneNumber { public string Number{get;set;} public PhoneN
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
}
在客户端,我得到了一个MyNamespace.Contact类;但是,我没有一个
MyNamespace.PhoneNumber或MyNamespace.PhoneNumberType。我发现,如果我显式地添加只返回这些类型的假webmethods,那么就会呈现客户端类型。有没有一种方法可以强制使用其他伪造的web方法呈现该枚举
我需要枚举,因为我需要遍历该列表,并根据PhoneNumberType执行一些不同的操作。我不希望硬编码幻数或硬编码枚举定义。我需要向方法签名添加GenerateScriptType属性 所以我的页面方法现在是
[WebMethod]
[GenerateScriptType(typeof(PhoneNumberType))]
[GenerateScriptType(typeof(PhoneNumber))]
public static Contact GetContact(Guid id)
{
}
[WebMethod]
[GenerateScriptType(typeof(PhoneNumberType))]
[GenerateScriptType(typeof(PhoneNumber))]
public static Contact GetContact(Guid id)
{
}