COM+ Web 服務(wù):通過復(fù)選框路由到 XML Web Services (轉(zhuǎn))6_第1頁
COM+ Web 服務(wù):通過復(fù)選框路由到 XML Web Services (轉(zhuǎn))6_第2頁
COM+ Web 服務(wù):通過復(fù)選框路由到 XML Web Services (轉(zhuǎn))6_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、要建立并運(yùn)行此 C# 組件,在完成編輯連接值以連接到 Microsoft SQL Server 數(shù)據(jù)庫之后,需要使用 sn.exe 生成 sctrans.snk 加強(qiáng)名稱關(guān)鍵字文件,然后在 using 語句中使用程序集引用對其進(jìn)行編譯。如果您在服務(wù)器上進(jìn)行部署,應(yīng)使用 gacutil.exe(如果正在使用 SDK)或通過 .NET 框架用戶界面將程序集放入 GAC,然后運(yùn)行 regsvcs.exe,注冊 COM+ 托管組件。Regsvcs.exe 將使用以下屬性,將組件發(fā)布為服務(wù)器上的 SOAP 端點(diǎn)和服務(wù)器(進(jìn)程外)激活:assembly: ApplicationActivation(Act

2、ivationOption.Server, SoapVRoot=CSSoapSQL)此組件在每種方法調(diào)用中使用不同的事務(wù),具有一個(gè)自動完成方法,并被配置為進(jìn)行緩沖。使用托管和非托管 COM+ 組件時(shí),對象池和事務(wù)將如所預(yù)期的那樣通過 SOAP 運(yùn)行。例如,如果使用下列 VBScript 通過 SOAP 訪問以下 ServicedComponent:mon = soap:wsdl=http:/jnoss3/sctrans/SCTrans.SCTransSQLNC.soap?WSDLWScript.Echo(mon)for i = 1 to 2set c = GetObject(mon)for j

3、 = 1 to 10WScript.Echo i & & j & & c.CountUp(SCWKONC) nextnext將顯示以下輸出內(nèi)容:C:monikeractscwkoMicrosoft (R) Windows Script Host Version 5.6Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.soap:wsdl=http:/jnoss3/sctrans/SCTrans.SCTransSQLNC.soap?WSDL1 1 486 NC 6e41f32f-74be-45f0-94c0-989

4、e7e1c5672 1 2 487 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 1 3 488 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 1 4 489 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 1 5 490 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 1 68 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 1 79 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 1 8 10 N

5、C af26b53b-4a1f-48c8-8880-518c2b55a7ce 1 9 494 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 1 10 495 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 2 1 13 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 2 2 14 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 2 3 15 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 2 4 499 NC 6e41f32f-74b

6、e-45f0-94c0-989e7e1c5672 2 5 17 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 2 6 501 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 2 7 502 NC 6e41f32f-74be-45f0-94c0-989e7e1c5672 2 8 19 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 2 9 20 NC af26b53b-4a1f-48c8-8880-518c2b55a7ce 2 10 21 NC af26b53b-4a1f-48c8-8880-518

7、c2b55a7ce 這就是所預(yù)期的緩沖的組件:從緩沖池中拖出對象并重新使用。使用客戶端激活的緩沖組件的行為都是相同的。非托管組件的對象池和事務(wù)也如所預(yù)期的那樣運(yùn)行(雖然 Visual Basic 6.0 組件不支持對象池)。需要為大多數(shù)非托管應(yīng)用程序通過 COM+ 管理工具設(shè)置緩沖和事務(wù)屬性。傳遞引用WKO 與 CAO 模型的一個(gè)關(guān)鍵區(qū)別在于它們向有狀態(tài)的對象傳遞引用的能力。以下是 C# ServicedComponent 示例,顯示了此操作的基本步驟:using System;using System.Reflection;using System.EnterpriseServices;us

8、ing System.Runtime.InteropServices;assembly: ApplicationName(RefPass)assembly: ApplicationActivation(ActivationOption.Server, SoapVRoot=RefPass)assembly: AssemblyKeyFile(RefPass.snk)namespace RefPasspublic interface IParentstring SetRef(object inKid);object GetRef();string CountUp(object obj); publi

9、c interface IChildstring GetValue ();string CountUp();void SetName(string key);ClassInterface(ClassInterfaceType.AutoDual)public class Parent: ServicedComponent, IParentprotected Child _kid = null;public string SetRef(object inKid)_kid = (Child)inKid;return _kid.GetValue();public object GetRef()retu

10、rn (object)_kid;public string CountUp(object obj)Child kid = (Child)obj;if (kid = null) return _kid.CountUp();else return kid.CountUp();ClassInterface(ClassInterfaceType.AutoDual)public class Child : ServicedComponent, IChildprivate int _counter = 0;private string _name = none;public string CountUp() _count

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論