測試文字功能,小工具,標題

記錄很重要,不然會浪費很多時間在找以前的記憶

一個人的氣度,決定他未來的高度。

2014年4月30日 星期三

Visual Studio Express 使用 Report Viewer 的練習 Part 8 VWD2010 Express使用總整理

之前測試了使用 VWD2010 Express 可以顯示出來 ReportViewer 的資料,但過程有點小亂,所以再整理一篇比較簡單完整的版本

實作如下:

建立測試環境

虛擬機 裝 XP SP3系統 → 安裝 IIS → Framework 3.5 → WindowsInstaller4.5 → WindowsPowerShell1.0 → SQL Server 2008 R2 Express with Advanced Services → VWD 2008 Express → VWD 2008 Express Reportviewer套件 → VWD 2010 Express → VS2010SP1 → ReportViewer轉發性套件


建立報表

VWD 2010 Express → 檔案 一 新網站 → C# ASP.NET空網站 → Web位置 Http http://xxx/WebSite → 加入新項目 Web Form TestReportViewer.aspx → 關掉 VWD 2010 Express → VWD 2008 Express → 開啟 網站 WebSite ( 應該會出弄警告訊息,說Framework版本不符,先選否 ) → 從VWD 2008 Express 工具箱 拉一個 Reportviewer 到 TestReportViewer.aspx → 在設計畫面編輯報表 → 試跑出來是OK的 (主要是讓 VWD 2008 Express幫忙在web.config產生一些要用到的東西) → 再用VWD 2010 Express 開啟 WebSite → 加入DLL (這一步要再確認 是不是在先前就加了,有點忘了) → 修改 web.config Version= 9.0.0.0 改成 10 → 拉一個 AJAX 擴充功能 的 ScriptManager → 再拉一個 UpdatePanel 就 OK 了。

如果不拉 ScriptManager ,會出現錯誤



如果不拉UpdatePanel,也是能運作,但會有警告訊息


VWD 2010 Express 設計畫面會出現紅字,但這可能是正常的,因為它不讓你編輯報表,只能呈現出來報表

ObjectDataSource1 是 VWD 2008 Express 用 ReportViewer精靈產生出來的,但相同的,如果手動用 VWD 2010 Express 去 建 ObjectDataSource 出來,也是可以用的。




============ HTML CODE ===================================
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="TestReportViewer.aspx.cs" Inherits="calllights_TestReportViewer" %>

<%@ Register Assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    Namespace="Microsoft.Reporting.WebForms" TagPrefix="rsweb" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <asp:ScriptManager runat="server">
    </asp:ScriptManager>
    <div>
        <rsweb:reportviewer runat="server" ID="Reportviewer1" Font-Names="Verdana"
            Font-Size="8pt" Height="400px" Width="400px">
            <localreport reportpath="c:\inetpub\wwwroot\WebSite\calllights\Report1.rdlc">
                <datasources>
                    <rsweb:ReportDataSource DataSourceId="ObjectDataSource1"
                        Name="lshospDataSet_vroomlightdata" />
                </datasources>
            </localreport>
        </rsweb:reportviewer>
        <asp:ObjectDataSource ID="ObjectDataSource1" runat="server"
            SelectMethod="GetData"
            TypeName="lshospDataSetTableAdapters.vroomlightdataTableAdapter">
        </asp:ObjectDataSource>
    </div>
    </form>
</body>
</html>

============= web.config =====================================

<!-- VWD 2008 ReportViewer  Version= 9.0.0.0
 VWD 2010 ReportViewer Version =10.0.0.0 把 9 改成 10 -->
<system.web>
<httpHandlers>
   <add path="Reserved.ReportViewerWebControl.axd" verb="*" type="Microsoft.Reporting.WebForms.HttpHandler, Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    validate="false" />
  </httpHandlers>
  <compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="Microsoft.ReportViewer.WebForms, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
                <add assembly="Microsoft.ReportViewer.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/></assemblies></compilation>
</system.web>

沒有留言:

張貼留言