【文章內(nèi)容簡(jiǎn)介】
面提交數(shù)據(jù)到B頁面,B頁面進(jìn)行處理然后從服務(wù)端跳轉(zhuǎn)到其它頁面跳轉(zhuǎn)就是指客戶端的跳轉(zhuǎn)簡(jiǎn)述你對(duì)XML Web Service的原理的認(rèn)識(shí)?答:利用SOAP(簡(jiǎn)單對(duì)象訪問協(xié)議)在上執(zhí)行遠(yuǎn)程方法的調(diào)用,也可以使用WSDL(Web服務(wù)描述語言)來完成完整的描述Web服務(wù),然后用UDDI注冊(cè)各個(gè)服務(wù)提供商提供的服務(wù),以便共享他們。什么叫應(yīng)用程序域?答:應(yīng)用程序域可以理解為一種輕量級(jí)進(jìn)程。起到安全的作用。占用資源小。CTS、CLS、CLR分別作何解釋?答:CTS:通用語言系統(tǒng)。CLS:通用語言規(guī)范。CLR:公共語言運(yùn)行庫。什么是受管制的代碼?答:unsafe:非托管代碼。不經(jīng)過CLR運(yùn)行。什么是強(qiáng)類型系統(tǒng)?答:RTTI:類型識(shí)別系統(tǒng)。什么是codebehind技術(shù)codebehind是指代碼和用戶界面分開aspx and cs,配件的意思是?答:程序集。(中間語言,源數(shù)據(jù),資源,裝配清單)常用的調(diào)用WebService的方法有哪些?答:。 Web Reference菜單選項(xiàng)net Remoting 的工作原理是什么?答:服務(wù)器端向客戶端發(fā)送一個(gè)進(jìn)程編號(hào),一個(gè)程序域編號(hào),以確定對(duì)象的位置。O/R Mapping 的原理答:利用反射,配置將對(duì)象和數(shù)據(jù)庫表映射remoting和webservice兩項(xiàng)技術(shù)的理解以及實(shí)際中的應(yīng)用。答:WS主要是可利用HTTP,穿透防火墻。而Remoting可以利用TCP/IP,二進(jìn)制傳送提高效率。out保留字怎么使用,什么時(shí)候使用答:有時(shí)為了從一個(gè)函數(shù)中返回多個(gè)值,我們需要使用out關(guān)鍵字,把輸出值賦給通過引用傳遞給方法的變量(也就是參數(shù))。但C要求變量再被引用的前必須初始化。在調(diào)用該方法時(shí),還需要添加out關(guān)鍵字PDB是什么東西? 在調(diào)試中它應(yīng)該放在哪里?PDB是用于保存調(diào)試和項(xiàng)目狀態(tài)信息的文件,在debug的時(shí)候?qū)a(chǎn)生pdb文件,調(diào)試的時(shí)候應(yīng)該放在和對(duì)應(yīng)應(yīng)用程序集相同目錄。使用ASMX的XML Remoting的區(qū)別?Web服務(wù)使用的消息機(jī)制,而Remoting采用的RPC. Web Service能用于不同平臺(tái),不同語言,Remoting只適用。效率上Remoting高于Xml Web Service類型系統(tǒng)是由XMLSchema表示的嗎?CLS是XMLSchema表示的嗎?不清楚從概念上闡述前期綁定(earlybinding)和后期綁定(latebinding)的區(qū)別?這個(gè)就像是強(qiáng)弱類型的比較相似,前期綁定是在編譯的時(shí)候就確定了要綁定的數(shù)據(jù),而后期綁定是在運(yùn)行的時(shí)候才填充數(shù)據(jù)。所以前期綁定如果失敗,會(huì)在編譯時(shí)報(bào)編譯錯(cuò)誤,而后期綁定失敗只有在運(yùn)行時(shí)的時(shí)候才發(fā)生?動(dòng)態(tài)列舉一下你所了解的XML技術(shù)及其應(yīng)用答:保存配置,站與站之間的交流,WEB SERVICE。以及與數(shù)據(jù)庫的數(shù)據(jù)交互等地方都要用它.?答:相當(dāng)于函數(shù)指針,定義了委托就可以在不調(diào)用原方法名稱的情況下調(diào)用那個(gè)方法.委托具有以下特點(diǎn):委托類似于 C++ 函數(shù)指針,但它是類型安全的。委托允許將方法作為參數(shù)進(jìn)行傳遞。委托可用于定義回調(diào)方法。委托可以鏈接在一起;例如,可以對(duì)一個(gè)事件調(diào)用多個(gè)方法。方法不需要與委托簽名精確匹配。有關(guān)更多信息,請(qǐng)參見協(xié)變和逆變。C 版引入了匿名方法的概念,此類方法允許將代碼塊作為參數(shù)傳遞,以代替單獨(dú)定義的方法。概述反射和序列化反射:程序集包含模塊,而模塊包含類型,類型又包含成員。反射則提供了封裝程序集、模塊和類型的對(duì)象。您可以使用反射動(dòng)態(tài)地創(chuàng)建類型的實(shí)例,將類型綁定到現(xiàn)有對(duì)象,或從現(xiàn)有對(duì)象中獲取類型。然后,可以調(diào)用類型的方法或訪問其字段和屬性序列化:序列化是將對(duì)象轉(zhuǎn)換為容易傳輸?shù)母袷降倪^程。例如,可以序列化一個(gè)對(duì)象,然后使用 HTTP 通過 Internet 在客戶端和服務(wù)器之間傳輸該對(duì)象。在另一端,反序列化將從該流重新構(gòu)造對(duì)象。11) XmlSerializer是如何工作的?使用這個(gè)類的進(jìn)程需要什么ACL權(quán)限?我只知道XmlSerializer是將對(duì)象的屬性和字段進(jìn)行序列化和反序列化的,序列化成為xml數(shù)據(jù),反序列化再將xml轉(zhuǎn)換成對(duì)象。應(yīng)該至少需要ACL權(quán)限中的讀權(quán)限.23)XmlSerializer使用的針對(duì)屬性的模式有什么好處?解決了什么問題?只序列化有用的數(shù)據(jù),而不是序列化整個(gè)對(duì)象。實(shí)現(xiàn)沒必要的數(shù)據(jù)冗余,和提升序列化時(shí)的性能。(delegate)的知識(shí),請(qǐng)完成以下用戶控件中代碼片段的填寫:namespace test{public delegate void OnDBOperate()。public class UserControlBase : {public event OnDBOperate OnNew。privatevoidtoolBar_ButtonClick(objectsender, e){if((BtnNew)){//請(qǐng)?jiān)谝韵卵a(bǔ)齊代碼用來調(diào)用OnDBOperate委托簽名的OnNew事件。}}}答:if( OnNew != null ) OnNew( this, e )。,完成填空string strTmp = abcdefg某某某。int i= (strTmp).Length。int j= 。以上代碼執(zhí)行完后,i= j=答:i=13,j=10,給定表 table1 中有兩個(gè)字段 ID、LastUpdateDate,ID表示更新的事務(wù)號(hào),LastUpdateDate表示更新時(shí)的服務(wù)器時(shí)間,請(qǐng)使用一句SQL語句獲得最后更新的事務(wù)號(hào)答:Select ID FROM table1 Where LastUpdateDate = (Select MAX(LastUpdateDate) FROM table1),分析以下代碼,當(dāng)調(diào)用test方法時(shí)i10時(shí)是否會(huì)引起死鎖?并簡(jiǎn)要說明理由。public void test(int i){ lock(this){ if (i10) { i。 test(i)。 }}}答:不會(huì)發(fā)生死鎖,(但有一點(diǎn)int是按值傳遞的,所以每次改變的都只是一個(gè)副本,因此不會(huì)出現(xiàn)死鎖。但如果把int換做一個(gè)object,那么死鎖會(huì)發(fā)生)3) 什么叫圈復(fù)雜度(cyclomatic plexity)?為什么它很重要?不知道,望指教 ?4) 寫一個(gè)標(biāo)準(zhǔn)的lock(),在訪問變量的前后創(chuàng)建臨界區(qū),要有雙重檢查,見:評(píng)論回復(fù)5) 什么叫FullTrust?放入GAC的assembly是否是FullTrust的?FullTrust完全信任。放入GAC中的Assembly是否FullTrust我的理解不是。我理解FullTrust是可以通過代碼設(shè)定的6) 代碼加上需要安全權(quán)限的特性有什么好處?可以更加靈活的設(shè)置對(duì)代碼的訪問權(quán)限,實(shí)現(xiàn)代碼級(jí)保護(hù)。?這點(diǎn)不是特清楚,有明白的給講解下7) gacutil /l | find /i Corillian 這句命令的作用是什么?全局程序集緩存中如果有Corillian就更新該程序集,沒有就安裝8) sn t 這句命令是干嘛的?9) DCOM需要防火墻打開哪些端口?端口135是干嘛用的?135端口,因?yàn)镈COM的端口號(hào)是隨機(jī)分配的,默認(rèn)情況下,會(huì)分配1024以上的端口號(hào),所以默認(rèn)情況下,DCOM不能穿越防火墻。因?yàn)楦静粫缘瞄_哪個(gè)端口。但有解決辦法可以使DCOM分配的端口號(hào)固定,135是遠(yuǎn)程過程調(diào)用(RPC)的默認(rèn)端口10)對(duì)比OOP和SOA,它們的目的分別是什么?我想OOP和SOA應(yīng)該沒有對(duì)比性吧。OOP是一種編程模型,強(qiáng)調(diào)將復(fù)雜的邏輯分解出小的模塊,特性是繼承,封裝和多態(tài) 。而SOA是一個(gè)技術(shù)框架,技術(shù)框架和編程模型應(yīng)該說不是一碼事吧?SOA的思想是將業(yè)務(wù)邏輯封裝成服務(wù)或者中間件提供給應(yīng)用程序來調(diào)用,當(dāng)然其組件化思想是繼承和發(fā)揚(yáng)了OOP的優(yōu)點(diǎn)。13)?何時(shí)應(yīng)該使用哪一個(gè)?。當(dāng)編譯模式為debug的時(shí)候才有效,為release的時(shí),而Trace則是在debug和release兩種模式下均可以向跟蹤窗口輸出信息。14)Debug Build和Release Build的區(qū)別,是否會(huì)有明顯的速度變化?請(qǐng)說明理由。Debug會(huì)產(chǎn)生pdb文件,release不會(huì)。Debug用于開發(fā)時(shí)的調(diào)試,不能要于部署,譯一些特殊代碼,比如IFDEBUG ,而Release則會(huì)將那些特殊標(biāo)記省略15)JIT是以assembly為單位發(fā)生還是以方法為單位發(fā)生?這對(duì)于工作區(qū)有何影響?方法,道理很簡(jiǎn)單,因?yàn)閷?duì)于一次運(yùn)行,很可能只用到一個(gè)程序集中極少數(shù)類型和對(duì)象,而大部分可能并不會(huì)被使用,此時(shí)CLR傻乎乎的給整個(gè)程序集都給Compile了,CLR不是傻瘋了么17)(b)和a == b一樣嗎?不一樣。(b)表示a與b一致, a==b表示a與b的值相等18)在對(duì)象比較中,對(duì)象一致和對(duì)象相等分別是指什么?對(duì)象一致是指兩個(gè)對(duì)象是同一個(gè)對(duì)象,引用相同。而對(duì)象相等是指兩個(gè)對(duì)象的值相同,但引用不一定相同19)(deep copy)?實(shí)現(xiàn)IClonable接口20)請(qǐng)解釋一下IClonableIClonable方法是實(shí)現(xiàn)深度復(fù)制的接口,實(shí)現(xiàn)它應(yīng)該能深度復(fù)制一個(gè)對(duì)象出來。深度復(fù)制的特征的調(diào)用對(duì)象的構(gòu)造方法,創(chuàng)建新的對(duì)象,包括創(chuàng)建對(duì)象中嵌套的引用對(duì)象的新實(shí)例。而Shadow復(fù)制則不同,是淺表復(fù)制,不重新創(chuàng)建新實(shí)例。().深度復(fù)制(Deep Copy)與淺表復(fù)制(Shadow Copy)的比較 public class Name { public string FirstName。 public string LastName。 } public class Person:ICloneable { public Name PersonName。 public string Email。 /**//// summary /// Deep Copy的例子 /// /summary /// returns/returns public Object Clone() { Person p = new Person()。 = 。 = new Name()。 = 。 = 。 return p。 } public void ChangLastName(string lastName) { = lastName。 } public static void Main() { Person p = new Person()。 = new Name()。 = jill。 = zhang。 = jillzhang@。 Person sameNamePerson = () as Person。 (clr_)。 ()。 ()。 Person samePerson = () as Person。 (Shadow)。 ()。 ()。 ()。 } }24)?它究竟好不好?我挺喜歡用out參數(shù)的,特別是當(dāng)函數(shù)需要有多于1個(gè)返回的時(shí)候,我比較愿意用out,至于它好不好沒研究過 ?25)特性能夠放到某個(gè)方法的參數(shù)上?如果可以,這有什么用?可以,作用可以對(duì)參數(shù)有進(jìn)一步限定,比如輸入?yún)?shù)為int類型,可以通過允許AttributeTargets=ParameterInfo的Attribute自定義實(shí)現(xiàn)來限定輸入?yún)?shù)的大小,比如當(dāng)輸入?yún)?shù)小于100的時(shí)候便抱錯(cuò)。對(duì)方法的參數(shù)設(shè)置Attribute的例子 [AttributeUsage()] public class ParameterAtt : Attribute {