還沒有功夫?qū)懲暾摹!!?br>我打算和我的工作文檔和工作報告一起寫,這樣也比較省事,哈哈。
就寫點小的玩意來娛樂娛樂大眾好了。
今天用Server的ToAdfPolygon將Datasource Specific API下的PolygonN轉(zhuǎn)化為ADF Geometry中的Polygon。結(jié)果轉(zhuǎn)換倒是沒什么,但是一運行吧,頁面上就會提示什么引用空對象的引用什么的,還是IE提示的,又沒有辦法調(diào)試,折騰了很長時間,無果。
一開始懷疑是不是AO的COM直接轉(zhuǎn)Value Object的用起來不方便,就把轉(zhuǎn)換后的Polygon Clone了一下。這不 Clone還好,一Clone問題就出來了,就是那個Null什么的Exception。看看Polygon的對象,沒問題啊。就開始想。實在沒辦法,就Catch了一下那個Exception,讀取堆棧發(fā)現(xiàn)是Rings[i].Clone出了問題,rings.count = 1,但是rings[0] = null。很明顯是ring沒轉(zhuǎn)成功。
尋找問題的源頭,發(fā)現(xiàn)原來Datasource Specific API下面,Polygon支持連續(xù)的Curve,例如我的那個要素,就是一個Circular Curve,但是ADF下就不支持了。所以轉(zhuǎn)換ring的時候,自然也就無法成功。
最后找到了相關(guān)的例子,發(fā)現(xiàn)例子中都是用Density將線段用直線逼近后再放到ADF上的。
由此可見,ArcGIS的例子太陰險了,文檔太“概要”了,除了告訴你有哪些Member,啥都不說。。。
無語。