2012-03-27 11 views
0

ich eine Silverlight-Anwendung haben, und ich bin mit Bing Karte sdk, trotzdem folgte ich das Tutorial in diesem Link: Bing Maps BindingsBing Maps DataBase Bindung Silverlight

und er nutzt XML-Datei als Datenquelle, aber in Meine Situation Ich benutze eine Datenbank, wie kann ich das gleiche Ergebnis mit einer Datenbankverbindung erreichen. Danke.

Ich habe ‚Silverlight-fähigen WCF-Dienst‘ und setzen ein Verfahren wie folgt aus:

public DataTable GetCustomer() 
{ 
    string conn = ConfigurationManager.ConnectionStrings["ConnectToDB"].ConnectionString; 

    DataTable dataTable; 
    SqlDataAdapter dataAdapter = new SqlDataAdapter(); 
    using (SqlConnection connection = new SqlConnection(conn)) 
    { 
     using (SqlCommand cmd = new SqlCommand()) 
     { 
      cmd.CommandText = "select ID,Name,Lat,Long from Customers"; 
      cmd.Connection = connection; 
      connection.Open(); 
      dataAdapter.SelectCommand = cmd; 
      dataTable = new DataTable(); 
      dataAdapter.Fill(dataTable); 
     } 
    } 
    return dataTable; 
} 

, aber ich weiß nicht, wie das Ergebnis dieser Methode zu binden und es in diesen:

<UserControl.Resources> 
    <DataTemplate x:Key="LogoTemplate"> 
     <m:Pushpin m:MapLayer.Position="{Binding ????}" > 
      <ToolTipService.ToolTip > 
       <TextBlock Text="{Binding ????}"></TextBlock> 
      </ToolTipService.ToolTip> 
     </m:Pushpin> 
    </DataTemplate> 
    <t:LocationDataCollection x:Key="LocationList" IsDataSource="True"/> 

ich meine was soll ich anstelle von '????' , oder sollte ich einen anderen Rückgabetyp von meiner WCF-Methode verwenden ... oder was? Danke

Antwort

0

Sie sollten einen RIA Serivce oder WCF-Dienst oder ASMX-Dienst erstellen, um die Daten aus der Datenbank abzurufen.

http://msdn.microsoft.com/en-us/library/cc197940(v=vs.95).aspx http://stackoverflow.com/questions/994616/how-to-connect-database-in-silverlight-applications http://www.codeproject.com/Questions/235874/how-to-connection-MS-access-database-in-silverligh

Dank Deepu

+0

danken Ihr für Ihre Antwort und ich habe meine Frage aktualisiert, ich hoffe ich mache es jetzt klar. – AboKevo