YahooMaps还是Silverlight中的OpenStreetMaps?

YahooMaps还是Silverlight中的OpenStreetMaps?,silverlight,Silverlight,有人见过在silverlight(2.0)中使用YahooMaps API的例子吗?特别是JSON API?Yahoo发布的是Flash教程,而不是SL教程。我试图了解如何处理来自服务器的JSON回复,如下所示: var YAHOO=window.YAHOO |{}; YAHOO.namespace=function(_1){ 如果(!_1 | |!_1.长度){ 返回null; } var _2=_1.分割(“.”); var_3=雅虎; 对于(var i=(_2[0]=“YAHOO”)?1:

有人见过在silverlight(2.0)中使用YahooMaps API的例子吗?特别是JSON API?Yahoo发布的是Flash教程,而不是SL教程。我试图了解如何处理来自服务器的JSON回复,如下所示:

var YAHOO=window.YAHOO |{}; YAHOO.namespace=function(_1){ 如果(!_1 | |!_1.长度){ 返回null; } var _2=_1.分割(“.”); var_3=雅虎;
对于(var i=(_2[0]=“YAHOO”)?1:0;iOpenStreetMaps在新的Silverlight地图控件中运行良好。

BaseUri=”http://us.maps2.yimg.com/us.png.maps.yimg.com/png?v=3.52&t=m&x={0}&y={1}&z={2}”;
BaseUri= "http://us.maps2.yimg.com/us.png.maps.yimg.com/png?v=3.52&t=m&x={0}&y={1}&z={2}";

public override Uri GetUri(int x, int y, int zoomLevel)
{
    double posY;
    double zoom;
    checked
    {
        zoom = 18 - zoomLevel;
    }
    double num4 = Math.Pow(2.0, zoomLevel)/2.0;

    if (y < num4)
        posY = (num4 - Convert.ToDouble(y)) - 1.0;
    else
        posY = ((Convert.ToDouble(y) + 1) - num4)*-1.0;
    return new Uri(String.Format(CultureInfo.InvariantCulture, UriFormat, x, posY, zoom));
}
公共覆盖Uri GetUri(int x,int y,int zoomLevel) { 双花边; 双变焦; 选中的 { 缩放=18-缩放级别; } 双num4=数学功率(2.0,zoomLevel)/2.0; if(y
如果你使用的是微软的Silverlight技术,为什么不使用Bing/Virtual Earth mapping SDK呢。我认为如果你只做最简单的地图显示,使用起来会容易得多。我最近没有用过它,但在它还是CTP的时候,我对它做了一点小小的尝试。添加自定义cont似乎很容易将rols和styles添加到地图(假设您想用图钉标记位置)

这是我最近发现的一篇文章,它应该能让你快速入门