2011-12-09 77 views
2

我是新來的是vb這是代碼我的工作:更新Vb.net棄用代碼

Dim InputDoc As XmlDocument = New XmlDocument() 
InputDoc.LoadXml(tem) 
Dim Transformer As XslCompiledTransform = New XslCompiledTransform() 

Transformer.Load(Server.MapPath("D/" & T)) 
Dim xmlCtl As System.Web.UI.WebControls.Xml = New System.Web.UI.WebControls.Xml 
xmlCtl.Document = InputDoc 
xmlCtl.Transform = Transformer 
Controls.Add(xmlCtl) 

我改變XslTranformXslCompiledTranform - 是這樣做正確的事? 但是我仍然收到很少的其他錯誤,因爲xmlCtl.Document被obselete和xmlCtl.Transform的值不能轉換爲Transformer。我正在使用.Net 4.0。任何人都可以請告訴我如何解決這些問題?

回答

1

我將XslTranform更改爲XslCompiledTranform - 這是正確的做法嗎?

至於this post是的,這是正確的做法。 轉換大型文檔時顯然存在memory leakage問題。所以我想對此保持警惕。

,但我仍然得到一些其他錯誤,xmlCtl.Document是已廢棄和xmlCtl.Transform的價值不能被轉換的變壓器

如果你不會有XSLT轉換這將是正確的。

Dim xmlCtl As System.Web.UI.WebControls.Xml = New System.Web.UI.WebControls.Xml 

但是你想使用XSLT,所以這是行不通的。

創建XPathDocument並致電CreateNavigator() 使用XPathNavigator執行XSLT轉換。

This post談論使用xml web控件和xslt。

您也可以查看this

This uses XslCompiledTransform並且應該是ASP.NET Xml控件的替代品。將與集成XSLCompiledTransform

無論如何,我希望這一些幫助。