2012-01-02 81 views
1

我試圖從webservice中檢索活動數據。這是我的web服務代碼。從webservice中檢索數據並在列表框中顯示它

public string getRecentActivity(string userName) 
{ 
    string result1 = ""; 
    string result2 = ""; 
    string result3 = ""; 
    string result4 = ""; 
    string result5 = ""; 

    string sql = "EXEC GetRecentActivities '" + userName + "'"; 
    SqlCommand cmd = new SqlCommand(sql, sqlConnection); 
    SqlDataReader reader; 

    try 
    { 
     sqlConnection.Open(); 
     reader = cmd.ExecuteReader(); 
     while (reader.Read()) 
     { 
      result1 += reader[0] + "#"; 
      result2 += reader[1] + "#"; 
      result3 += reader[2] + "#"; 
      result4 += reader[3] + "#"; 
      result5 += reader[4] + "#"; 

     } 
    } 
    catch (Exception) { } 

    return result1 + "~" + result2 + "~" + result3 + "~" + result4 + "~" + result5; 
} 

我爲我的Windows Mobile提供了以下XAML文件。

<ListBox Grid.Row="1" Height="Auto" HorizontalAlignment="Left" Margin="12,140,0,0" Name="lb_AllActivity" VerticalAlignment="Top" Width="Auto" FontFamily="Tahoma" FontSize="25"> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <Grid> 
          <Border Margin="3"> 
           <StackPanel Background="Transparent" Orientation="Vertical" Width="420" Height="60"> 
            <StackPanel Background="Transparent" Orientation="Horizontal" Width="420" Height="60"> 
             <TextBlock Foreground="White" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Center" Text="{Binding DateTime}"></TextBlock> 
             <TextBlock Foreground="White" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Center" Text="{Binding Amt}"></TextBlock> 
             <TextBlock Foreground="White" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Center" Text="{Binding Msg}"></TextBlock>      
            </StackPanel> 
           </StackPanel> 
          </Border> 
         </Grid> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 
      </ListBox> 

對於CS文件,我有下面的代碼: 我已經在我的CS文件中的下列代碼

public partial class Activities : PhoneApplicationPage 
{ 
    DatabaseService.ServiceSoapClient dbService = new DatabaseService.ServiceSoapClient(); 


    public Activities() 
    { 
     InitializeComponent(); 
     InitializeComponent(); 
     dbService.getAllActivityAsync("Russell Loh"); 
     dbService.getAllActivityCompleted += new EventHandler<DatabaseService.getAllActivityCompletedEventArgs>(dbService_getAllActivity); 

    } 

    public class AllActivity 
    { 
     public string TransID { get; set; } 
     public string Amt { get; set; } 
     public string Cat { get; set; } 
     public string SharedNo { get; set; } 
     public string Msg { get; set; } 
     public string DateTime { get; set; } 
    } 

    void dbService_getAllActivity(object sender, DatabaseService.getAllActivityCompletedEventArgs e) 
    { 

     if (e.Error == null) 
     { 
      string result = e.Result; 
      string[] arrayActivity = result.Split('~'); 

      string[] transID = arrayActivity[0].Split('#'); 
      string[] amount = arrayActivity[1].Split('#'); 
      string[] category = arrayActivity[2].Split('#'); 
      string[] sharedNum = arrayActivity[3].Split('#'); 
      string[] message = arrayActivity[4].Split('#'); 
      string[] dateTime = arrayActivity[5].Split('#'); 

      List<String> Activitylist = new List<String>(); 

      for (int i = 0; i < transID.Length; i++) 
      { 
       string TransID = transID[i]; 
       string Amt = amount[i]; 
       string Cat = category[i]; 
       string SharedNo = sharedNum[i]; 
       string Msg = message[i]; 
       string DateTime = dateTime[i]; 


       //create a new instance of activity 
       AllActivity activity = new AllActivity(); 
       activity.Amt = Amt; 
       activity.Msg = Msg; 
       activity.DateTime = DateTime; 

       Activitylist.Add(activity); 

      } 

      lb_AllActivity.ItemsSource = Activitylist; 

     } 

     } 

不過,我遇到了以下錯誤的:Activitylist.Add (活動); 'System.Collections.Generic.List'的最佳重載匹配有一些無效參數。

有人可以請教我關於這個錯誤。我該怎麼做才能解決這個錯誤。 感謝

回答

1

你宣佈你的Activitylist作爲一個字符串列表,它應該是AllActivity

列表
List<String> Activitylist = new List<String>(); 

應該

List<AllActivity> Activitylist = new List<AllActivity>(); 
+0

好。非常感謝 (: – user1125911 2012-01-02 21:14:50

相關問題