2016-04-10 15 views
0

私はいくつかのジオポイントと関連情報ウィンドウを持つGoogleマップにデータを格納しようとしていますが、すべてデータベースに格納されています。私のコードはエラーなくコンパイルされますが、情報ウィンドウのコンテンツは正しく機能していません。私はC#とjavascriptで作業しています。Googleマップの情報ボックスをデータベースから取り込む方法は?

このコードは、各情報ウィンドウに文字列 "some words"を埋め込みます。また、「いくつかの言葉」を@ row.Latおよび/または@ row.Lngに置き換えて、情報ウィンドウにデータベースの正しい番号を入力することで、動作させることもできます。しかし、@ row.Description(必要なコンテンツがあるときの行の名前)を入力すると、マップはロードされませんが、エラーメッセージは表示されません。 @ row.randomStuff(存在しない行)を置くとエラーが発生するので、@ row.Descriptionは読み込まれていますが、理解されていません。

@{ 
    var db = Database.Open("ClownDB"); 
    var query = "SELECT * FROM Point"; 

foreach (var row in db.Query(query)) { 
    <text> 
    var markerPosition = new google.maps.LatLng(@row.Lat, @row.Lng); 
    var marker = new google.maps.Marker({ 
     position: markerPosition, 
     map: ClownMap, 
     clickable:true}); 
    marker.content = "some words"; 

    var InfoWindow = new google.maps.InfoWindow(); 
     google.maps.event.addListener(marker, 'click', function({ 
      InfoWindow.setContent(this.content); 
      InfoWindow.open(ClownMap, this); 
      }); 
      </text> 
     } 
    }   
+0

は、私はあなたが必要とは思わない「@」「行」の前では、コードブロックしていますので。 – BoltBait

+0

ありがとうございましたが、@sを取り出すと新しいエラーが出ました:( –

+0

@ row.Description with quote marks。 – BoltBait

答えて

0

変更行:と

marker.content = "some words"; 

marker.content = "@row.Description"; 
0

この.NET tutorialに指定されているあなたのforeach (var row in db.Query(query)) {コードの前@ を入れてみてください。それは次のようになります。here記載されているJavaScriptに.NETデータを渡すの

@foreach(var row in db.Query(selectQueryString)){

他の方法。

関連する問題