久久亚洲精品成人_国产精品欧美综合亚洲_亚洲va天堂va欧美ⅴa在线_91色视频在线观看_久久影院亚洲_一级黄色片播放_日韩av在线一区_精品一区二区在线看_老头吃奶性行交视频_日韩免费高清视频_天天操天天爽天天干_日本欧美在线视频

首頁 > 編程 > Delphi > 正文

關(guān)于C#下寫的Web Service 服務(wù)在Delphi下調(diào)用時(shí)的問題

2024-07-21 02:18:12
字體:
供稿:網(wǎng)友
關(guān)于c#下寫的web service 服務(wù)在delphi下調(diào)用時(shí)的問題

首先我覺得有必要把.net平臺(tái)下開發(fā)webservice進(jìn)行一個(gè)比較全面的闡述,web service的最初產(chǎn)生是在電子商務(wù)的環(huán)境下出現(xiàn)的,有些問題通過傳統(tǒng)的手段已經(jīng)不容易解決,比如在應(yīng)用程序之間進(jìn)行商務(wù)通信、數(shù)據(jù)交換,使用dcom、corba等二進(jìn)制機(jī)制的東西已經(jīng)行不通了,姑且不說他們受各自平臺(tái)的限制,比如dcom(distribute common objects model)只能在windows平臺(tái)下進(jìn)行,而corba(common objects request broker architecture)又只是java平臺(tái)下的產(chǎn)物。他們要實(shí)現(xiàn)應(yīng)用程序之間的數(shù)據(jù)通信是比較困難的。

在這種背景下,web services 應(yīng)運(yùn)而生,它很好的解決了跨語言、跨平臺(tái)以及良好而安全的穿透企業(yè)防火墻。它的體系結(jié)構(gòu)大體上分為五個(gè)層次:

http(hypertext transfer protocol)信道下進(jìn)行數(shù)據(jù)通信
xml(extensable markup language)數(shù)據(jù)表達(dá)形式
soap(simple objects access protocol)的數(shù)據(jù)封裝
wsdl(webservices description language)的描述語言格式
uddi(universal description and discovery integration) 統(tǒng)一的描述、發(fā)現(xiàn)和集成
作為它的優(yōu)點(diǎn)跨語言、跨平臺(tái)以及良好而安全的穿透企業(yè)防火墻已經(jīng)足以使我們感到興奮了。不過它也存在需要改善的地方,比如:

http進(jìn)行數(shù)據(jù)通信存在速度較慢的情況,尤其是第一次聯(lián)結(jié)。
需要一臺(tái)web server這一額外的開銷
說了webservices的體系結(jié)構(gòu)以及其優(yōu)點(diǎn)缺點(diǎn)以后我們切入正題,那就是我們這次討論的話題:

web service 服務(wù)在delphi下調(diào)用時(shí)的問題

閑話少說,我們用一個(gè)檢驗(yàn)webmethod的attribute的一個(gè)簡單的例子進(jìn)行闡述:它是完成一次從客戶a轉(zhuǎn)帳到b的一個(gè)簡單商務(wù)過程。

首先我們在.net framework1.1下創(chuàng)建一個(gè)webservice,這時(shí)候.net會(huì)幫我們自動(dòng)創(chuàng)建一個(gè)web應(yīng)用

我們需要?jiǎng)?chuàng)建一個(gè)類attributetest,它是在命名空間namespace attributetesting下的,那么這個(gè)類它將自動(dòng)繼承了它的基類 system.web.services.webservice,需要支出的時(shí),我們可以對這個(gè)web應(yīng)用類設(shè)置其webserviceattribute,其中基本屬性包括description 和namespace

[webserviceattribute(namespace="http://www.isdoo.com/services",

description="hello ansel,this is a testing web service!")]

public class attributetest : system.web.services.webservice
{

[webmethodattribute(description="描述信息:繼承了count方法,并且對名稱進(jìn)行重載。執(zhí)行的是把錢從a用戶轉(zhuǎn)帳到b用戶......",
//messagename="changing messagename",
bufferresponse=true,
cacheduration=1000,
enablesession=true,
transactionoption=transactionoption.requiresnew)]
public string transmoney(double money)
{
try
{
contextutil.enablecommit();//transaction only used to database operation!
moneyintoa(money);
moneyoutfromb(money);
contextutil.setcomplete();
return "transaction successful,total "+money.tostring();
}
catch( exception e)
{
contextutil.setabort();
return "transaction failed! /n/r "+e.message;
}
}
private void moneyintoa(double money)
{
sqlcommand sqlcom = new sqlcommand("update budget set money=money+"+money.tostring()+" where name='a'");
databaseaccess mydatabase = new databaseaccess();
sqlcom.connection=mydatabase.getconnection();
sqlcom.connection.open();
sqlcom.executenonquery();
sqlcom.connection.close();
//throw new exception("operation failed when transfer money into a!");
}

private void moneyoutfromb(double money)
{
sqlcommand sqlcom = new sqlcommand("update budget set money=money-"+money.tostring()+" where name='b'");
databaseaccess mydatabase = new databaseaccess();
sqlcom.connection=mydatabase.getconnection();
sqlcom.connection.open();
sqlcom.executenonquery();
sqlcom.connection.close();
//throw new exception("operation failed when transfer money from b!");
}

}

其中我們需要特別注意的是,webmethodattribute,這也是我們這一次需要講述的重點(diǎn)內(nèi)容,只要給一個(gè)方法加上[webmethodattribute],哪怕里面沒有任何屬性,那么webservice就會(huì)把這個(gè)方法暴露(expose)給了客戶段調(diào)用者.下面我們講述一下它的6個(gè)屬性,其中包括2個(gè)描述性的信息屬性,4個(gè)功能屬性

描述性的信息屬性:

description
messagename
4個(gè)功能性屬性:

bufferresponse
cacheduration
enablesession
transactionoption
其中我們需要注意messagename這個(gè)屬性它delphi調(diào)用.net平臺(tái)下開發(fā)的webservice的時(shí)候,如果你設(shè)置了messagename這個(gè)attribute的話,那么客戶端調(diào)用時(shí)會(huì)報(bào)錯(cuò)誤。這也許是一個(gè)bug,或許后面的版本會(huì)解決這個(gè)問題。至于這幾個(gè)屬性的具體功能就不再這里詳細(xì)描述了。大家可以去看看相關(guān)的書籍。

下面我把delphi調(diào)用webservice的步驟列舉一下:

首先如果你只是開發(fā)調(diào)用客戶端,那么你只需要?jiǎng)?chuàng)建一個(gè)普通的應(yīng)用程序即可,然后需要你做的是,在工具欄webservices下面找到soaphttpclient這個(gè)控件,然后把它放在你的客戶端應(yīng)用窗體上;

其次就是你需要設(shè)置這個(gè)soaphttpclient的屬性url或者wsdl,這個(gè)內(nèi)容就是你的webservice的服務(wù)地址

比如我們當(dāng)前例子的服務(wù)地址是:http://localhost/attributetesting/attributetesting.asmx

如果你想輸入wsdl那么就是http://localhost/attributetesting/attributetesting.asmx?wsdl

這樣就完成了控件設(shè)置;

然后我們需要引入服務(wù)器端的wsdl,你可以手工來做,也可以用delphi提供的webservices importer功能來引入。

最后你只需要對引入的wsdl的接口進(jìn)行調(diào)用即可。在這里我們的對應(yīng)代碼是:

procedure tform1.bitbtn1click(sender: tobject);
var
aa:attributetestsoap;//這個(gè)就是wsdl下的類接口對象
msg:widestring;
bb:double;
begin
//httprio2 其實(shí)就是所謂的代理類,它負(fù)責(zé)進(jìn)行數(shù)據(jù)傳輸發(fā)送request和接受response的
aa:=httprio2 as attributetestsoap;

bb:=100.00;
msg:=aa.transmoney(bb);//這就是調(diào)用web服務(wù)所暴露給我們的web服務(wù)方法webmethod
showmessage(msg);
end;


ok! that's all!


商業(yè)源碼熱門下載www.html.org.cn

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

亚洲欧洲国产一区| 北条麻妃av高潮尖叫在线观看| 欧洲一区二区三区在线| 欧美国产视频日韩| 美女av一区二区三区 | 97香蕉超级碰碰久久免费软件| 在线观看国产一级片| 欧美国产激情一区二区三区蜜月| 亚洲一区二区三区精品在线| 精品视频资源站| 欧美午夜免费电影| 亚洲免费av观看| 日本韩国精品一区二区在线观看| 日韩精品免费在线视频观看| 日韩精品一区二区三区三区免费| 欧美zozozo| 亚洲国产成人爱av在线播放| 日韩成人免费视频| 国产亚洲欧洲黄色| 国产色视频一区| 国产女精品视频网站免费| 国产男女猛烈无遮挡a片漫画| www精品国产| 亚洲精品久久久久久无码色欲四季| 国产麻豆a毛片| 无码人妻久久一区二区三区| 欧美精品成人久久| 国产99久久久国产精品免费看| 国产精品久久久久aaaa| 久久久99免费| 亚洲国产日韩一区二区| 亚洲黄色在线观看| 午夜电影一区二区| 日韩一区二区精品视频| 91精品国产色综合久久不卡98| 国产精品入口免费视频一| 国产精品高清一区二区三区| 免费在线观看你懂的| 国产原创中文在线观看| 一道本在线观看视频| 亚洲精品乱码视频| www.51色.com| 日韩精品一区二区三区国语自制| www.久久色| 日本成人动漫在线观看| 国产欧美久久久精品免费| 亚洲人做受高潮| 亚洲性猛交xxxx乱大交| 国产三级第一页| 蜜桃在线一区二区三区| 亚洲精品国产无天堂网2021| 97精品视频在线观看| 国产精品日韩一区二区| 538国产视频| 久久久久久久久久电影| 欧美xxxx在线观看| 91精品91久久久久久| heyzo一本久久综合| 午夜成人免费电影| 国产亚洲福利社区一区| 日韩欧美中文字幕制服| 翡翠波斯猫1977年美国| 欧美黄色性生活| 少妇一区二区三区四区| 色噜噜久久综合| 在线亚洲男人天堂| 国产成人艳妇aa视频在线| a天堂视频在线| 国产网红主播福利一区二区| 午夜精品久久久久久久久久| 国产精品一区二区三区久久久 | 成人天堂资源www在线| 日韩视频―中文字幕| 色偷偷91综合久久噜噜| 一级片在线观看视频| 亚洲性xxxx| 99鲁鲁精品一区二区三区| 97av在线影院| 免费久久精品视频| 国内精品久久久久久影视8| 亚洲一区二区三区蜜桃| 亚洲伦理在线精品| 国产精成人品localhost| 91肉色超薄丝袜脚交一区二区| 欧美v亚洲v综合ⅴ国产v| 91亚洲一区二区| 久久精品人人做人人综合 | 国产传媒久久久| 亚洲精品国产一区二| 欧美巨大黑人极品精男| 国产情侣在线视频| 在线免费观看日本一区| 国产精品一区无码| 大西瓜av在线| 日韩欧美国产高清| 国产亚洲欧美一区二区三区| 青青操免费在线视频| 欧美私模裸体表演在线观看| 日本在线观看免费视频| 日韩一区二区免费在线观看| 亚洲aⅴ乱码精品成人区| 欧洲国产精品| 欧美午夜寂寞影院| 久久艹免费视频| 777777777亚洲妇女| 久久久久久久波多野高潮日日| 女同一区二区| 午夜精品一区二区三区三上悠亚| 久久久精品免费看| 麻豆成人在线视频| 国产精品揄拍一区二区| 一区二区免费看| 国产精品二区一区二区aⅴ| 在线免费一区| 亚洲精品视频在线播放| 成人永久免费视频| 手机在线中文字幕| 色吧亚洲视频| 在线观看日韩www视频免费| 国产精品一区二区在线观看不卡 | 国产精品九九九| 岛国一区二区三区| 午夜理伦三级做爰电影| 欧美激情视频一区二区三区| 91精品国产福利在线观看| 蜜臀av一区二区在线免费观看 | 国产精品无码粉嫩小泬| 在线码字幕一区| 丝袜美腿高跟呻吟高潮一区| 天天操狠狠操夜夜操| 北条麻妃高清一区| 国产suv精品一区二区883| 精品亚洲aⅴ乱码一区二区三区| 欧美最猛性xxxxx(亚洲精品)| 久久成人18免费观看| 一本加勒比北条麻妃| 亚洲一二区在线| 另类色图亚洲色图| 欧美视频免费在线观看| 高清在线不卡av| 成人小视频在线播放| 日本美女视频网站| 国产日韩在线一区| 欧美成人免费视频| 亚洲精品福利视频网站| 国产又粗又长又大视频| 五月婷婷欧美激情| 中文字幕成人在线视频| 一二三四中文字幕| 国产一区免费| 日韩毛片精品高清免费| 国产精品人人爽| 国产手机在线视频| 69视频在线观看免费| 人人爽人人爽av| 男人天堂手机在线视频| 亚洲高清乱码| 国产成人免费电影| 国产精品国产三级国产aⅴ9色 | 国产99久久精品一区二区永久免费 | 日本一本草久p| 欧美激情论坛| 欧美日本啪啪无遮挡网站| 午夜一区二区三区视频| 国产午夜久久久久| 美国一区二区三区在线播放| 成人av无码一区二区三区| 青青草视频在线观看免费| 男人操女人下面视频| www国产精品内射老熟女| 在线观看精品视频| 国产91在线亚洲| 东北少妇不带套对白| 亚洲免费一级视频| 51国偷自产一区二区三区| 性做久久久久久| 不卡视频免费播放| 国产精品久久久久久久久久精爆| 国产一二三四区| 欧美成人精品一区二区免费看片| 中文字幕欧美激情极品| 日韩精品一区二区亚洲av性色| 国产福利视频网站| 男人的天堂最新网址| 手机av在线网站| 绯色av蜜臀vs少妇| 爱情岛论坛亚洲自拍| 日本三级日本三级日本三级极| 国产精品一级黄片| 久久久无码中文字幕久...| 午夜老司机精品| 亚洲欧美日产图| 国产3p露脸普通话对白| 日韩精品――色哟哟| www.免费av| 加勒比在线一区| 国产自产一区二区| 日本激情视频网站| av电影在线观看不卡| 精品在线播放免费| 亚洲欧美乱综合| 精品粉嫩aⅴ一区二区三区四区| 久久精品中文字幕| 99在线首页视频| 少妇性l交大片7724com| 久久露脸国语精品国产91| 美女诱惑一区二区| 欧美日韩国产一中文字不卡 | 手机看片日韩国产| 无码精品一区二区三区在线播放 | www.五月婷| 国产老肥熟一区二区三区| 亚洲综合免费视频| 丝袜亚洲另类欧美综合| 亚洲欧美日本韩国| 日韩欧美黄色动漫| 亚洲国产精品日韩| avove在线播放| 91社区在线播放| 色综合影院在线| 日韩va在线观看| 国产aⅴ综合色| 深夜福利一区二区| 99精品一级欧美片免费播放| 国产男女裸体做爰爽爽| 亚洲美女视频网| 一级黄色特级片| 高清免费成人av| 国产精品久久久久久久久久ktv | 国产精品一区专区| 美女mm1313爽爽久久久蜜臀| 日韩av在线影院| 亚洲精品电影在线一区| www.国产com| 欧美日本一区二区在线观看| 亚洲一区三区| 后入内射欧美99二区视频| 在线亚洲高清视频| 日韩免费观看网站| 在线视频不卡一区二区三区| 国产三级小视频| 久久久精品久久久久| 西西大胆午夜视频| 亚洲一区二区三区爽爽爽爽爽 | 欧美日韩一级黄色片| 欧美日本高清视频在线观看| 91手机视频在线| 奇米影视一区二区三区| 97视频免费看| 尤物视频免费观看| 亚洲欧美制服第一页| 国产国语老龄妇女a片| 偷拍一区二区三区| 日本www在线视频| 2014亚洲片线观看视频免费| 神马影院我不卡午夜| 日韩激情小视频| 欧美性色视频在线| 乌克兰美女av| 国产乱码精品一品二品| 欧美大片网站在线观看| 女人另类性混交zo| 国产农村老头老太视频| 亚洲深夜福利在线| 国产一区二区黄色| 男人操女人的视频网站| 亚洲高清在线精品| 日本一区二区三区www| 黄瓜视频污在线观看| 一级中文字幕一区二区| 日韩中文字幕国产精品| 天天色综合天天| 一本色道久久88亚洲综合88| 国产不卡一二三| 日本福利一区二区| 人妻av中文系列| 亚洲精品自拍动漫在线| 亚洲欧洲一区二区| 亚洲天堂av片| 久久99久久久久久久噜噜| 18岁成人毛片| 久久国产精品免费一区| 日韩少妇一区二区| 日韩中文字幕一区二区三区| 国产91精品久久久久久| 我想看黄色大片| 在线观看91久久久久久| 国产精品流白浆视频| 天天舔天天干天天操| 日本一区二区在线不卡| 自拍日韩亚洲一区在线| 综合婷婷亚洲小说| 亚洲精品激情视频| 国产一区二区三区网站| 亚洲精品911| 制服诱惑一区| 色视频欧美一区二区三区| 国产精品丝袜一区二区| 亚洲无限av看| 国产视频九色蝌蚪| 久久人人爽爽人人爽人人片av| 亚洲精品一区二区三区樱花 | 午夜精品久久久久久久爽| 国产乱人伦真实精品视频| 青草国产精品久久久久久| 在线丝袜欧美日韩制服| a视频免费在线观看| 天堂а√在线中文在线| 日韩欧美综合一区| 中文字幕 欧美激情| 日韩精品伦理第一区| 天天爽夜夜爽夜夜爽精品视频| www.日本高清视频| 国内成人精品视频| 成人免费毛片高清视频| 男男受被啪到高潮自述| 久久久精品国产网站| 久久精品国产久精国产| 亚洲 中文字幕 日韩 无码| 亚洲国产97在线精品一区| 国产亲伦免费视频播放| 97视频中文字幕| 成人精品小蝌蚪| 国产黑丝在线观看| 国内精品久久久| 国产亚洲欧美日韩在线一区| 国精产品视频一二二区| 成人中文字幕+乱码+中文字幕| 中文字幕一区二区三区不卡在线| 久久6免费视频| 97国产精品视频| 久久一留热品黄| 最新中文字幕日本| 91久久久久久久久| 五月天一区二区| 国产精品自拍第一页| 欧美成人高潮一二区在线看| 国产视频久久久| 后入内射欧美99二区视频| 91看片破解版| 国色天香2019中文字幕在线观看| 国产视频亚洲色图| 日韩特级黄色片| 午夜午夜精品一区二区三区文| 亚洲第一页在线| 久久久久久久久久久久久久久99| 国产午夜免费视频| 日本a在线免费观看| 欧美日韩国产第一页| 亚洲欧洲性图库| 亚洲无码精品国产| 超碰成人在线播放| 成人性生交大片免费看视频直播| 欧美日韩国产综合一区二区三区| 麻豆国产欧美一区二区三区| 婷婷丁香综合网| 免费日韩在线观看| 久久综合五月天| 精品国产户外野外| 捆绑紧缚一区二区三区视频| 精品一区二区在线观看视频| 日本在线视频www色| 7777精品视频| 欧美日韩亚州综合| 国产成人精品影视| 日本一区二区三区精品| 亚洲色图偷拍视频| 欧美日韩国产一二| 色综合天天综合网国产成人网 | 久久久久久久久久福利| 国产精品美女免费视频| 日韩一区二区三区高清免费看看| 成人少妇影院yyyy| 日韩视频在线观看一区| 99日在线视频| 色吧亚洲视频| 97成人在线视频| 日韩一级视频免费观看在线| 国产肉丝袜一区二区| www香蕉视频| 翔田千里88av中文字幕| 性欧美极品xxxx欧美一区二区| 国产成人精品福利一区二区三区 | 日本不卡中文字幕| 欧美在线视频第一页| www.99av.com| 日韩国产美国| 日本午夜精品理论片a级appf发布| 精品久久久久久久久久久久久久久| 久久久精品人体av艺术| 亚洲av色香蕉一区二区三区| 国产性xxxx| 91精品又粗又猛又爽| 国产日韩av网站| 国产一区二区三区高清| 午夜精品久久久久久久99黑人 | 亚洲一区二区三区四区的| 国内精品写真在线观看| 国产情侣免费视频| 精品在线观看一区| www.色.com| 日本成人在线不卡| 国产综合色一区二区三区| 欧美性做爰毛片| 中文字幕日韩欧美在线视频| 欧美精品18+| 欧美午夜激情在线| 成人免费一区二区三区在线观看| 成人网在线播放| 日韩—二三区免费观看av|