Progress® Telerik® Reporting R1 2018

ReportViewerReportServiceClientFactory Property

Gets or sets the IReportServiceClientFactory that ReportViewer will use the next time a new instance of ReportServiceClient is required.

Namespace:  Telerik.ReportViewer.Silverlight
Assembly:  Telerik.ReportViewer.Silverlight (in Telerik.ReportViewer.Silverlight.dll)


public IReportServiceClientFactory ReportServiceClientFactory { get; set; }

Property Value

Type: IReportServiceClientFactory


The ReportViewer usually passes absolute Uri to the Create(Uri) method. For more information on how ReportServiceUri is resolved to absolute see EnsureAbsoluteUri(Uri).


This example illustrates how to implement and use a custom IReportServiceClientFactory.
using System;
using System.ServiceModel;
using System.Windows.Controls;
using Telerik.Reporting.Service.SilverlightClient;
using Telerik.ReportViewer.Silverlight;

public partial class MainPage : UserControl, IReportServiceClientFactory
    public MainPage()

        this.ReportViewer1.ReportServiceClientFactory = this;

    ReportServiceClient IReportServiceClientFactory.Create(System.Uri remoteAddress)
        var binding = new BasicHttpBinding() // or BasicHttpBinding(BasicHttpSecurityMode.Transport) overload if SSL is used
            MaxBufferSize = int.MaxValue,
            MaxReceivedMessageSize = int.MaxValue,
            ReceiveTimeout = new TimeSpan(0, 15, 0),
            SendTimeout = new TimeSpan(0, 15, 0)

        var endpointAddress = new EndpointAddress(remoteAddress);

        return new ReportServiceClient(binding, endpointAddress);


See Also

Is this article helpful? Yes / No
Thank you for your feedback!

Give article feedback

Tell us how we can improve this article