OpenLayers には、再利用したい良い例があります。
http://openlayers.org/dev/examples/dynamic-text-layer.html
この例は、私の PC で正常に動作しています。上記の例では、textfile.txt の代わりに test.ashx ハンドラを使用したいと思います
上記の例の textfile.txt の代わりに、上記の例を .ashx ハンドラーに置き換えたことがわかります。コードの下を参照してください。
var osm = new OpenLayers.Layer.OSM();
// create a vector layer for drawing
vector = new OpenLayers.Layer.Vector("Editable Vectors");
var layer = new OpenLayers.Layer.Vector("POIs", {
strategies: [new OpenLayers.Strategy.BBOX({resFactor: 1.1})],
protocol: new OpenLayers.Protocol.HTTP({
url: "test.ashx",
format: new OpenLayers.Format.Text()
})
});
test.ashx では、私のコードは単純です。私はURLでテストし、正常に動作しています。与えられた例では、「textfile.txt」で利用可能な同じデータを印刷するだけです。下記参照。
ポイント タイトル 説明 アイコン
25,67 私のオレンジ色のタイトル 私のオレンジ色の説明
test.ashx のコード
public class Handler : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.Write("point"+"\t"+"title"+"\t"+"description"+"\t"+"icon"+"\n"+
"25,67"+"\t"+"my orange title"+"\t"+"my orange description");
}
public bool IsReusable {
get {
return false;
}
}
}
私の目標は、.ashx を介してデータベースからデータを取得するハンドラーを設計することです。しかし、その前に、この単純なコードが機能することを確認したいと思います.しかし、機能していません. 手がかりをいただければ幸いです。