Lição 1: Criar o projeto do Visual Studio de esquema RDL
Para este tutorial, você criará um aplicativo de console simples. Este tutorial pressupõe que você está desenvolvendo em MicrosoftVisual Studio 2005.
Observação |
|---|
Ao acessar um serviço Web Servidor de Relatórios executado no SQL Server Express com Serviços Avançados, você deve acrescentar "$SQLExpress" ao caminho de "ReportServer". Por exemplo: http://myserver/reportserver$sqlexpress/reportservice2005.asmx" |
Para criar um aplicativo de console
No menu Arquivo, aponte para Novoe clique em Projeto para abrir a caixa de diálogo Novo Projeto.
Expanda a pasta Projetos do Visual Basic ou Projetos do Visual C#.
Clique no ícone Aplicativo de Console.
Na caixa Nome, digite um nome para seu projeto. Digite o nome SampleRDLSchema.
Na caixa Local, digite o caminho em que você deseja salvar o projeto ou clique em Procurar para navegar até a pasta.
Clique em OK. Uma exibição recolhida de seu projeto aparecerá no Gerenciador de Soluções.
Em seguida, será necessário adicionar uma referência Web ao ponto de extremidade ReportService2005. No menu Projeto, clique em Adicionar Referência Web e digite o caminho da URL para o servidor de relatório ou navegue para ele com as opções na janela Procurar.
Selecione o ponto de extremidade ReportService2005, digite ReportService2005 como Nome da Referência Webe clique no botão Adicionar Referência.
Para obter mais informações sobre como se conectar ao serviço Web Servidor de Relatórios, consulte Tutorial: Acessando o Serviço Web do Servidor de Relatórios com Visual Basic ou Visual C#.
No Gerenciador de Soluções, expanda o nó do projeto. Você verá que um arquivo de código com o nome padrão de Program.cs (Module1.vb para o Visual Basic) foi adicionado ao seu projeto.
Abra o arquivo Program.cs (Module1.vb para o Visual Basic) e substitua o código pelo seguinte:
O código a seguir fornece os fragmentos de método que serão utilizados para implementar a funcionalidade Carregar, Atualizar e Salvar.
using System; using System.Collections.Generic; using System.IO; using System.Text; using System.Xml; using System.Xml.Serialization; using SampleRDLSchema.ReportService2005; namespace SampleRDLSchema { class ReportUpdater { ReportingService2005 _reportService; static void Main(string[] args) { ReportUpdater reportUpdater = new ReportUpdater(); reportUpdater.UpdateReport(); } private void UpdateReport() { try { // Set up the Report Service connection _reportService = new ReportingService2005(); _reportService.Credentials = System.Net.CredentialCache.DefaultCredentials; _reportService.Url = "http://myserver/reportserver/" + "reportservice2005.asmx"; // Call the methods to update a report definition LoadReportDefinition(); UpdateReportDefinition(); PublishReportDefinition(); } catch (Exception ex) { System.Console.WriteLine(ex.Message); } } private void LoadReportDefinition() { //Lesson 2: Load a report definition from the report // catalog } private void UpdateReportDefinition() { //Lesson 3: Update the report definition using the // classes generated from the RDL Schema } private void PublishReportDefinition() { //Lesson 4: Publish the updated report definition back // to the report catalog } } }Imports System Imports System.Collections.Generic Imports System.IO Imports System.Text Imports System.Xml Imports System.Xml.Serialization Imports SampleRDLSchema.ReportService2005 Namespace SampleRDLSchema Module ReportUpdater Private m_reportService As ReportingService2005 Public Sub Main(ByVal args As String()) Try 'Set up the Report Service connection m_reportService = New ReportingService2005 m_reportService.Credentials = _ System.Net.CredentialCache.DefaultCredentials m_reportService.Url = _ "http://myserver/reportserver/" & _ "reportservice2005.asmx" 'Call the methods to update a report definition LoadReportDefinition() UpdateReportDefinition() PublishReportDefinition() Catch ex As Exception System.Console.WriteLine(ex.Message) End Try End Sub Private Sub LoadReportDefinition() 'Lesson 2: Load a report definition from the report ' catalog End Sub Private Sub UpdateReportDefinition() 'Lesson 3: Update the report definition using the ' classes generated from the RDL Schema End Sub Private Sub PublishReportDefinition() 'Lesson 4: Publish the updated report definition back ' to the report catalog End Sub End Module End Namespace
Próxima lição
Na próxima lição, você usará a Ferramenta de Definição de Esquema XML (Xsd.exe) para gerar classes com base no esquema RDL e incluí-las no seu projeto. Consulte Lição 2: Gerar classes do esquema RDL usando a ferramenta xsd.
Consulte também
Observação