2011-07-19 33 views

回答

2

您鏈接到的文章給出了一個答案:使用EnvelopeAngle來計算幾何對象所對着的角度的一半。如果結果是> = 90,則該對象橫跨半球。

另一種方法是在發生錯誤後(通過捕獲異常,或者生成錯誤)處理錯誤,而不是檢查特定對象是否可能導致錯誤。

1

怎麼樣

try 
{ 
    Microsoft.SqlServer.Types.SqlGeography.Parse(YourPolygon); 
    // everything is ok... 
} 
catch (Microsoft.SqlServer.Types.GLArgumentException _E) 
{ 
    // Polygon not ok 
} 

編輯: 上面的代碼是在你發佈的鏈接所使用的相同(在異常密切關注他們展示) - 當多邊形被解析爲SqlGeography類型的檢查情況。

編輯2: 添加了正確的異常類型。

相關問題