麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 擴展 > SilverLight > 正文

Silverlight中動態獲取Web Service地址

2024-09-06 20:41:34
字體:
來源:轉載
供稿:網友
在使用WCF或者WS進行數據庫操作的時候都需要有一個明確的服務地址,如果是WCF就是svc文件地址。初學者通常會直接使用VS的Add Service Reference來添加引用。這的確是十分方便的手段,但是這樣會帶來什么樣的麻煩呢?

  第一,在開發的階段一旦改變了WS文件的目錄結構就必須改變SL工程中的WS地址,而且這種改變并不是單純的Update Service Reference這么簡單,因為地址已經改變了,你必須刪掉舊的Reference來添加新的Reference,這是其一。

  第二, 當項目開發完成要部署上去服務器時大問題就來了。如果在開發的時候是用VS的Add Service Reference來添加引用的話,系統會自動生成一個ServiceReferences.ClientConfig的配置文件,里面記錄著WS的地址和緩存、連接時長之類的信息,要命的是這個配置文件是連同SL工程一并打包進xap文件里面的,也就是說一旦項目部署到了服務器上之后就不能再改WS的地址了。這對項目的遷移,服務器IP地址的變動都帶來十分不利的影響。

這里介紹一種動態獲取WS地址的方法,這種方法不依賴于 ServiceReferences.ClientConfig文件。雖然說不依賴于配置文件,但是開發者仍然需要使用VS的Add Service Reference來添加一次引用,用于生成SL端的操作代碼。好了,進入正題,下面是用于生成WSClient的類

代碼如下:
public class ServiceUtil
{
public static string SVCPath { set; get; }

/// <summary>
/// Get Data Service path
/// </summary>
/// <returns>path</returns>
public static WorkflowServiceClient GetDynamicClient()
{
if (SVCPath == null)
throw new Exception("Wrong SVC Path!");

BasicHttpBinding binding = new BasicHttpBinding(Application.Current.Host.Source.Scheme.Equals("https", StringComparison.InvariantCultureIgnoreCase) ? BasicHttpSecurityMode.Transport : BasicHttpSecurityMode.None);
binding.MaxReceivedMessageSize = int.MaxValue;
binding.MaxBufferSize = int.MaxValue;

return new WorkflowServiceClient(binding, new EndpointAddress(new Uri(Application.Current.Host.Source, SVCPath)));
}
}


上面ServiceUtil類中有一個靜態的字符串變量,用來保存WS文件路徑;然后下面的GetDynamicClient方法就是把SL應用的宿主網站uri與WS文件路徑組合起來形成完整的WS引用URL。這里這個靜態變量SVCPath通常是在使用WS操作前賦值,而具體的值可以通過網站Web.config文件的appsetting中字段中傳過來,至于怎么在SL工程中獲取aspx頁面的參數的問題,我在上一篇隨筆中有寫到,大家可以參考一下。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 一级做受毛片免费大片 | xxxxxx性| 亚洲精品aⅴ中文字幕乱码 欧美囗交 | 欧美精品一区二区三区四区 | 7777网站| av电影手机在线看 | 99国产精品欲a | 91快色| 免费观看视频网站 | 久久久久久中文字幕 | 午夜爽爽爽男女免费观看hd | 黄色a级片视频 | 国产毛片网站 | 久久第四色 | 黄色特级视频 | 一级做a爱片性色毛片高清 国产精品色在线网站 | 国产老师做www爽爽爽视频 | 男人的天堂毛片 | 久久久久电影网站 | 欧美偷拍一区二区 | 亚洲一区二区三区日本久久九 | 国产精品久久久久一区二区 | 一级国产精品一级国产精品片 | 一级黄色在线免费观看 | 久久久久中文字幕 | 欧美成年私人网站 | 一区二区三区日韩精品 | 欧美精品成人一区二区三区四区 | 成年免费视频黄网站在线观看 | 91看片王| 91一区二区在线观看 | av在线看网站 | hd性videos意大利复古 | 亚洲国产精品久久久久久久久久久 | 国产亚洲精品综合一区91 | 免看黄大片aa | 黄色一级视频 | 精国品产一区二区三区有限公司 | 国产成人高清成人av片在线看 | 把娇妻调教成暴露狂 | 一级电影免费在线观看 |