2012-06-02 2 views
0

서비스 (WCF/편안한 서비스) 내에서 .NET의 MSChart를 사용할 수있는 방법이 있습니까? 요구 사항은 차트를 생성하고 호출 응용 프로그램에 차트 이미지를 반환하는 서비스를 호스팅해야한다는 것입니다. 호출 응용 프로그램은 웹 서비스 메서드를 호출해야합니다. MSCHART 컨트롤을 포함 할 웹 페이지가 없습니다.서비스 내에서 .net 환경에서 MSChart 사용

답변

0

코드에서 차트를 생성 한 다음 차트를 스트림에 저장할 수 있습니다. 그런 다음 스트림을 호출자에게 리턴하십시오.

<WebMethod()> _ 
     Public Function GetChart(ByVal param1 As String, ByVal width As Integer) As String 
      Dim ch As New Charting 
      Dim ds As DataSet = blablabla 
      Dim page As New Page() 
      Dim form As New HtmlForm() 
      form.Controls.Add(ch.buildChart(param1, ds, width)) 
      page.Controls.Add(form) 
      Dim textWriter As New IO.StringWriter() 
      HttpContext.Current.Server.Execute(page, textWriter, False) 
      Dim htmltxt As String = textWriter.ToString 
      Return Regex.Replace(htmltxt, "<[/]?(form)[^>]*?>", "", RegexOptions.IgnoreCase) 
    End Function 

(JQuery와) 같이 사용 .. http://msdn.microsoft.com/en-us/library/dd456181.aspx

0

VB 버전을 참조하십시오

function GetChart(param1) { 
     var params = new Object(); 
     params.param1 = param1; 
     params.width = $(window).width() - 115; 
     $.ajax(
     { 
     type: "POST", 
     data: $.toJSON(params), 
     url: "WebService.asmx/GetChart", 
     dataType: "json", 
     contentType: "application/json", 
     complete: function (response) { 
     }, 
     success: function (response) { 
     $(divChart).html(response.d); 
     . 
     . 
     . 
관련 문제