C# WCF REST服务中的响应时间问题非常重要\u超过10分钟

C# WCF REST服务中的响应时间问题非常重要\u超过10分钟,c#,rest,wcf,time,C#,Rest,Wcf,Time,我创建了一个WCF REST服务来返回WsDimension类的列表,响应文件的最大大小为1MB 我的班级: [DataContract] public class WsDimension { [DataMember] public XElement DatasRefernecesValues = new XElement("ReferenceValues"); } 在响应中:每个元素都有一个元素列表 包含其他元素列表的一个元素示例: 这是我的休息服务: [Op

我创建了一个WCF REST服务来返回WsDimension类的列表,响应文件的最大大小为1MB

我的班级:

 [DataContract]
public class WsDimension
{  
    [DataMember]    
    public XElement DatasRefernecesValues = new XElement("ReferenceValues");
}
在响应中:每个元素都有一个元素列表 包含其他元素列表的一个元素示例:

这是我的休息服务:

[OperationContract] 
[WebGet]     
List<WsDimension> GetAllDimensionsByXMLFile(string xmlfile);
响应时间介于10分钟到16分钟之间

如何在服务实现中发现问题?或者他们是否有任何解决此问题的建议?
谢谢,

序列化的性能与CPU、内存和I/O速度的性能有关。 我认为DataContractSerializer对这个问题没有影响。或者,我们可以考虑XML序列化器来处理这些原始XML类型。 请参考以下官方建议。 此外,Newtonsoft.json在序列化和反序列化方面可能有更好的性能。但是我们需要改变项目框架来创建RESTAPI,比如Asp.NETWebAPI,因为WCF只支持这两种序列化程序。构建RESTAPI不是WCF的强项,序列化性能就是其中之一。使用第三方序列化程序替换默认DataContractSerializer非常复杂。
如果有什么我能帮忙的,请随时告诉我

你可以从移除3个FACH循环开始,而不是返回所有你想考虑的文件数据,只返回一页数据。一个Xml和三个嵌套的foreach并不表示性能差。
 foreach (var dimension in DimensionsList)
 {
     //..

     foreach (var reference in ReferenceList)
     {
         //..
         foreach (var finalCharac in finalCharacsList)

         {
            //  Here adding a List of Xelement for every Xelement
         }
     }
 }