在開發項目的過程中,由於要集成Cognos的報表通過URL,但是Cognos報表的本身URL長度過程,那么此時就需要開發一個跳轉的頁面,下面我們就采用VS2010開發一個跳轉的頁面Default.aspx
1:打開VS2010新建網站
2:選擇C#語言,ASP.NET空網站
3:項目JumpPage已經創建好,默認都有一個web.config配置文件
4:本例的web.config內容為,添加了appSettings節點,供下面的操作使用
<?xml version="1.0"?> <!-- 有關如何配置 ASP.NET 應用程序的詳細信息,請訪問 http://go.microsoft.com/fwlink/?LinkId=169433 --> <configuration> <system.web> <compilation debug="true" targetFramework="4.0"/> </system.web> <appSettings> <add key="1" value="http://www.baidu.com/"/> <add key="2" value="http://www.cnblogs.com/"/> </appSettings> </configuration>
4:新建一個文件,選擇Web窗體,系統默認取名為Default.aspx
5:如下圖所示,每一個aspx頁面都對應一個aspx.cs頁面,前者是顯示,后者是設計事件和代碼
6:在aspx對應的aspx.cs中都會自動生成一個Page_Load方法,針對本例Default.aspx.cs編碼如下
protected void Page_Load(object sender, EventArgs e) { //獲得傳過來的reportkey,如果為空提示用戶選擇報表 if (Request.QueryString["reportkey"] == null) { ClientScript.RegisterStartupScript(this.GetType(), " message", "<script language='javascript' >alert('請選擇一個報表!');</script>"); return; } //如果不為空,利用response重定向到報表URL else { string reportkey = Request.QueryString["reportkey"]; string reportpath = System.Configuration.ConfigurationManager.AppSettings[reportkey].ToString(); Response.Redirect(reportpath); } }
代碼解析:System.Configuration.ConfigurationManager.AppSettings[reportkey].ToString(); 作用是取出web.config配置文件中<appSettings>節點中key為reportkey的value值
7:發布網站在瀏覽器查看效果
不帶參數訪問網站
帶參數key訪問網站
效果,成功跳轉到key=1指定的地址 <add key="1" value="http://www.baidu.com/"/>
8:邏輯解釋
訪問aspx頁面同時給參數指定跳轉的路徑,跳轉的路徑在web.config配置