C# REST客户端和服务器是否可以发送/接收自定义类的通用列表?

C# REST客户端和服务器是否可以发送/接收自定义类的通用列表?,c#,rest,client-server,xml-serialization,generic-list,C#,Rest,Client Server,Xml Serialization,Generic List,我正在重构一对发送和接收XML文件的遗留应用程序。我更希望服务器传回自定义类的通用列表(客户端和服务器都必须与这些自定义类的任何更改同步)。瞧,我想从客户端调用服务器,如下所示: List<Departments> depts = fileXfer.FetchDepartmentData(String.Format("{0}/FetchDepartments", HHSConsts.BASE_REST_URL)); 服务器代码: // get the data and put i

我正在重构一对发送和接收XML文件的遗留应用程序。我更希望服务器传回自定义类的通用列表(客户端和服务器都必须与这些自定义类的任何更改同步)。瞧,我想从客户端调用服务器,如下所示:

List<Departments> depts = fileXfer.FetchDepartmentData(String.Format("{0}/FetchDepartments", HHSConsts.BASE_REST_URL));
服务器代码:

 // get the data and put it into a generic list, then:
 ArrayList blandifiedDepts = new ArrayList();
 foreach (Department dept in List<Departments>)
 {
     blandifiedDepts.Add(dept);
 }
 return blandifiedDepts;
//获取数据并将其放入通用列表中,然后:
ArrayList blandifiedepts=新的ArrayList();
foreach(列表中的部门)
{
增加(部门);
}
回膀胱;
这有意义吗

更新2 这就是我的想法:服务器将所有通用列表作为ArrayList返回,我在客户端以这种方式处理它们:

    ArrayList arrList = _fileXfer.FetchSiteMappings(String.Format("{0}/FetchSiteMappings", HHSConsts.BASE_REST_URL));
    List<SiteMapping> siteMappings = ConvertArrayListToSiteMappingList(arrList);
    _hhsdbutils.SaveSiteMappingData(siteMappings);

private static List<SiteMapping> ConvertArrayListToSiteMappingList(ArrayList arrList)
{
    List<SiteMapping> siteMappingList = new List<SiteMapping>();
    foreach (object arr in arrList)
    {
        SiteMapping sm;
        var mapping = arr as SiteMapping;
        if (mapping != null)
        {
            sm = mapping;
        }
        else continue;
        siteMappingList.Add(sm);
    }
    return siteMappingList;
}
ArrayList arrList=\u fileXfer.FetchSiteMappings(String.Format(“{0}/FetchSiteMappings”,HHSConsts.BASE\u REST\u URL));
List siteMappings=ConvertArrayListToSiteMappingList(arrList);
_hhsbutils.SaveSiteMappingData(siteMappings);
私有静态列表转换器ArrayList到ItemAppingList(ArrayList arrList)
{
List siteMappingList=新建列表();
foreach(arrList中的对象arr)
{
站点地图;
var-mapping=arr作为站点映射;
if(映射!=null)
{
sm=映射;
}
否则继续;
siteMappingList.Add(sm);
}
返回siteMappingList;
}

任何反对意见/建设性的批评(提示:沉默的接近票不是建设性的)?

是的,可以这样做。你可以参考这个

 // get the data and put it into a generic list, then:
 ArrayList blandifiedDepts = new ArrayList();
 foreach (Department dept in List<Departments>)
 {
     blandifiedDepts.Add(dept);
 }
 return blandifiedDepts;
    ArrayList arrList = _fileXfer.FetchSiteMappings(String.Format("{0}/FetchSiteMappings", HHSConsts.BASE_REST_URL));
    List<SiteMapping> siteMappings = ConvertArrayListToSiteMappingList(arrList);
    _hhsdbutils.SaveSiteMappingData(siteMappings);

private static List<SiteMapping> ConvertArrayListToSiteMappingList(ArrayList arrList)
{
    List<SiteMapping> siteMappingList = new List<SiteMapping>();
    foreach (object arr in arrList)
    {
        SiteMapping sm;
        var mapping = arr as SiteMapping;
        if (mapping != null)
        {
            sm = mapping;
        }
        else continue;
        siteMappingList.Add(sm);
    }
    return siteMappingList;
}