C# REST客户端和服务器是否可以发送/接收自定义类的通用列表?
我正在重构一对发送和接收XML文件的遗留应用程序。我更希望服务器传回自定义类的通用列表(客户端和服务器都必须与这些自定义类的任何更改同步)。瞧,我想从客户端调用服务器,如下所示: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
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;
}