2013-03-02 47 views
0

接口這是wcf服務高效嗎?

[ServiceContract] 
public interface Idemo 
{ 
    [OperationContract] 
    [WebGet(UriTemplate = "check?Value1={id}&Value2={name}&Value3={city}", 
ResponseFormat = WebMessageFormat.Xml, 
BodyStyle = WebMessageBodyStyle.Bare)] 
    string GetData(string id,string name); 
} 

public class demo : Idemo 
{ 
public string GetData(string id,string name,string city) 
    {   

     DataTable tb; 
     tb = con.GetDataTable("query"); 
     tb.TableName = "data";      
     System.IO.StringWriter writer = new System.IO.StringWriter(); 
     tb.WriteXml(writer, XmlWriteMode.IgnoreSchema, false); 
     return writer.ToString(); 
    } 
} 

返回表看起來像下面

sem sub1 sub2 sub3 

1 50 40 30 

2 60 20 40 

是界面設計好?我沒有使用任何合同。有沒有其他方法可以加速?

我聽說將DataSet轉換成一個自定義的DataContract併發送它..在我的場景中可能嗎?

+0

你爲什麼要加快速度?你確定它太慢了嗎? – GManNickG 2013-03-02 08:45:30

回答

0

如果您有性能問題,它不在您發佈的代碼中。

您用於獲取數據的方法的名稱是「getDataTable」,您還提到使用DataSets。

數據集的使用有一個開銷,你應該看看如何從數據庫中獲取數據。