日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

使用Visio Viewer载入数据库中的Visio图

發布時間:2023/12/19 数据库 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用Visio Viewer载入数据库中的Visio图 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

需求很簡單,在SQL Server數據庫中存放用戶上傳的Visio文件,然后使用Visio Viewer在IE中直接顯示用戶上傳的Visio文件的內容。

對于這個需求,我們需要分成兩部分:

1.實現Visio文件的數據庫存放和讀取,并在Asp.Net中能夠下載下來。

2.使用微軟官方提供的Visio Viewer,在HTML中使用該Object來調用Visio圖。

對于第一個功能。首先需要實現的是文件的上傳。在文件上傳時我們一般需要記錄3個內容:文件的Content Type,文件名和文件的二進制內容。用戶上傳文件保存到數據庫的功能代碼很簡單,我這里就不累述了。

然后說一下下載功能,我們新建一個ViewFile.aspx文件,然后在后臺代碼中編寫如下:

protected void Page_Load(object sender, EventArgs e){var p = Mgr.GetProcessByID(Request.QueryString["id"]);Page.Response.Clear();Page.Response.ContentType = p.FileContentType; //內容類型Page.Response.AddHeader("Content-Disposition", "attachment;FileName=" + p.FileName);//文件名Page.Response.BinaryWrite(p.ProcessFile.ToArray());//文件內容Page.Response.End();}

OK ,就這么簡單,現在我們只需要運行程序,然后Url中輸入ViewFile.aspx?id=6就可以讀取到ID=6的Visio文件并下載下來。

接下來再說Visio Viewer的調用,編寫一個新的頁面VisioView.aspx,

protected void Page_Load(object sender, EventArgs e){StringBuilder sb = new StringBuilder();sb.Append("<object classid=clsid:279D6C9A-652E-4833-BEFC-312CA8887857 id=vviewer ");sb.Append("codebase=http://download.microsoft.com/download/4/5/2/452f8090-413f-408f-83c0-edd66db786ee/vviewer.exe Width =100% Height = 600 > ");sb.Append("<param name=SRC value=" + "http://localhost:2303/VisioFile.aspx?id=6" + "> ");sb.Append("<param name=HighQualityRender value=1> ");sb.Append("<param name=BackColor value=#000000> ");sb.Append("<param name=PageColor value=#000000> ");sb.Append("<param name=PageVisible value=1> ");sb.Append("<param name=AlertsEnabled value=1> ");sb.Append("<param name=ContextMenuEnabled value=1> ");sb.Append("<param name=GridVisible value=1> ");sb.Append("<param name=PropertyDialogEnabled value=1> ");sb.Append("<param name=ScrollbarsVisible value=1> ");sb.Append("<param name=ToolbarVisible value=1> ");sb.Append("<param name=CurrentPageIndex value=1> ");sb.Append("<param name=Zoom value=-1> ");sb.Append("</object>");lvisio.Text = sb.ToString();//這里是一個Literal控件} 這個地方的代碼都是正確的,但是我們運行asp.net頁面卻會彈出錯誤“Microsoft Office Visio Viewer無法加載指定的URL或文件。”,如圖:

Visio文件正常下載,那么說明我們的src參數是正確的啊!這是什么原因造成的呢,經過簡單的研究,發現原來是Visio Viewer的一個Bug吧,這個控件他只認識Visio格式后綴的url,而我們這里的文件URL是VisioFile.aspx?id=6,這個地方Visio Viewer認為不是一個Visio文件,所以根本不加載其中的內容了。

那么怎么解決呢?辦法有好幾個:

1.做一個.vsd的httphandler,然后指定解釋.vsd格式的類,這樣URL就變成了XXX.vsd格式了。

2.加一個無聊的參數:xx=.vsd。這樣Visio Viewer就以為這個路徑是Visio文件并進行加載了。

我采用第二個方案,修改代碼第6行:

sb.Append("<param name=SRC value=" + "http://localhost:2303/VisioFile.aspx?id=6" + "&xx=.vsd> ");

OK,我們存放在數據庫中的Visio就可以正常顯示在Visio Viewer中了。

轉載于:https://www.cnblogs.com/studyzy/archive/2010/03/16/1687698.html

總結

以上是生活随笔為你收集整理的使用Visio Viewer载入数据库中的Visio图的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 日本精品久久久久中文字幕 | 99爱爱视频 | 美女隐私黄www网站动漫 | 成人一区二区三区在线 | 在线观看免费视频一区二区 | 欧美精品一区二区三区蜜臀 | 澳门久久 | 韩国福利一区 | 在线91观看 | 伊人网在线观看 | 亚洲欧美一区二区三区情侣bbw | 国产又粗又长 | 亚洲综合在线第一页 | 精品一区二区在线看 | 极品淫少妇 | 久久久无码精品亚洲国产 | 蜜桃av在线免费观看 | 偷拍女澡堂一区二区三区 | 台湾swag在线观看 | 在线婷婷 | 色小说综合 | 欧美六区 | 欧美深夜在线 | 色欧美亚洲 | 91久久精品无码一区二区 | 亚洲精品区| 91插插插影库永久免费 | 欧美国产精品一区 | 国产亚洲不卡 | 天海翼中文字幕 | 欧美日韩xxxx | 99国产精品久久久久久久久久久 | 欧美一区二区福利视频 | 欧美激情视频二区 | 国产一级二级三级在线 | 熟妇人妻精品一区二区三区视频 | 亚洲精品视频三区 | 国产精品videos | 热久久网站| 99久久精品无免国产免费 | 日本天堂网在线观看 | 欧美三级 欧美一级 | 四虎国产成人精品免费一女五男 | 性色av一区二区三区免费 | 精品99久久 | 一级性爱视频 | 成人看片黄a免费看视频 | 国产-第1页-浮力影院 | 青青在线观看视频 | 哺乳援交吃奶在线播放 | 美女亚洲一区 | 5月婷婷6月丁香 | 欧美午夜小视频 | 欧美午夜一区二区三区 | 亚洲黄色片在线观看 | 91免费视频网站 | 欧美性生交片4 | 好吊色这里只有精品 | 色干综合 | 毛片大全免费看 | a国产精品 | 波多野结衣电影在线播放 | 丝袜黄色片 | 99国产精品人妻噜啊噜 | 国产蜜臀在线 | av怡红院 | 男朋友是消防员第一季 | 午夜少妇| www.国产精品视频 | 美女赤身免费网站 | 夜夜操天天爽 | 欧美69影院| av手机在线免费观看 | 久久精品蜜桃 | 深夜在线网站 | 日韩在线高清视频 | 99热99热| 色婷婷av一区二区三区在线观看 | 在线免费av观看 | 免费看日韩| 女生扒开腿让男生操 | 女上男下动态图 | 国产成人综合一区二区三区 | 日韩精品在线不卡 | 中文字幕精品一区久久久久 | 日本精品影院 | 一区二区三区av夏目彩春 | 久久mm | 成人在线不卡视频 | 91麻豆免费看 | 色吧视频 | 都市豪门艳霸淫美妇 | 黑丝美女啪啪 | 日本一区不卡在线 | 婷婷午夜精品久久久久久性色av | 一个人看的www视频在线观看 | 69久久久| 激情在线观看视频 | 亚洲做受高潮无遮挡 |