2012-02-27 2 views
0

저는 Silverlight 및 WCF RIA 서비스에 대해 매우 신났습니다. 오해를 용서해주세요. 지도 서버에서 타일 URL을 사용하여 SL 클라이언트에 telerik 맵 구성 요소가 있습니다. 내 맞춤 공급자를 구현하고 싶었 기 때문에이 메서드를 구현했습니다.내 WCF RIA 서비스 uri 란 무엇입니까?

protected override Uri GetTile(int tileLevel, int tilePositionX, int tilePositionY) 
    { 
     int zoomLevel = ConvertTileToZoomLevel(tileLevel); 

     string url = this.tileUrlFormat; 

     url = ProtocolHelper.SetScheme(url); 
     url = url.Replace("{zoom}", zoomLevel.ToString(CultureInfo.InvariantCulture)); 
     url = url.Replace("{x}", tilePositionX.ToString(CultureInfo.InvariantCulture)); 
     url = url.Replace("{y}", tilePositionY.ToString(CultureInfo.InvariantCulture)); 
     url = url.Replace("{type}", googleTileType.ToString()); 
     return new Uri(url); 
    } 

온라인지도 서버에서 작동합니다. 그러나 SQL Server 데이터베이스에 저장된 자체 타일을 사용하고 싶었습니다.

어떻게 할 수 있습니까? 내 SL 클라이언트가 URL을 호출하도록 웹 프로젝트에서 WCF RIA 서비스를 어떻게 구현할 수 있습니까? 웹 프로젝트에서 도메인 서비스를 정의하고 SL에서 사용하는 많은 예제를 발견했지만 URL이 무엇인지 알고 싶습니다. 예를 들어 x, y, 확대/축소 매개 변수를 가져오고 데이터베이스에서 타일을 검색하는 도메인 서비스를 구현하는 경우 URL은 무엇이므로 SL 구성 요소에서 호출 할 수 있습니까? 그리고 다른 질문이 있습니다. 그렇게 할 수 있다면 해당 서비스를 호출하기 위해 내 사용자를 인증 할 수 있습니까? 그리고 어떻게?

답변

1

WCF RIA 서비스를 사용하여 타일을 쿼리하면 안됩니다. 확대/축소 매개 변수 인 x, y 및 type을 받고 해당 이미지를 반환하는 서버에서 get 메서드를 구현해야합니다. 서버 ASP MVC에서 사용하는 경우

예를 들어, get 함수는 다음과 같습니다

namespace MvcMap.Controllers 
{ 
    public class MapTile : Controller 
    { 
     public ActionResult GetTile(int zoom, int x, int y, string type="") 
     { 
      // Add your action logic here 
      // return your image 
     } 
    } 
} 

이 MVC 액션을 호출하는 URL과 유사한 :

http://yourdomain_or_ip/MapTile/GetTile?zoom=10&x=5&y10