2011-08-16 121 views
0

上WCF服務asp.net列表視圖綁定到對象

public class Response 
{ 
    public string ID { get; internal set; } 
    public string Data { get; set; } 
    public List<Message> Messages { get; set; } 
} 

public class Message 
{ 
    public DateTime DateTime { get; set; } 
    public string Message { get; set; } 
    public string ProcessName { get; set; } 

    public Message() 
    { 
     DateTime = DateTime.Now; 
     Message = ""; 
     ProcessName = ""; 
    } 
} 

asp.net

protected void Page_Load(object sender, EventArgs e) 
{ 
    BasicHttpBinding binding = new BasicHttpBinding(); 
    binding.MaxReceivedMessageSize = int.MaxValue; 
    binding.MaxBufferSize = int.MaxValue; 

    EndpointAddress endpoint = new EndpointAddress(new Uri(System.Configuration.ConfigurationManager.AppSettings["wcfserviceURL"])); 
    Wcfservice.wcfserviceClient wcfservice = new Wcfservice.wcfserviceClient(binding, endpoint); 

    Wcfservice.Response response = wcfservice.ReturnResponse(); 

    //I need to bind the response.Messages to a listview. It should display data in 3 columns DateTime, Message and ProcessName 
} 

我使用的數據源嚮導並它創建以下。但我不知道下一步該怎麼做要顯示

<asp:ListView ID="ListView1" runat="server" DataSourceID="LinqDataSource1"> 
</asp:ListView> 
<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="Wcfservice.Response" EntityTypeName="" 
    TableName="Messages"> 
</asp:LinqDataSource> 

回答

0

嘗試添加以下內容到頁面加載,在那裏你想ListView控件綁定數據:

LinqDataSource1.DataBind(); 
+0

它拋出錯誤: 無法在LinqDataSource'LinqDataSource1'的數據上下文類型'Response'上找到名爲'Messages'的屬性或字段。 它甚至沒有加載頁面。 – gangt