[英]Issue on Usage of FieldInfo class in .NET REFLECTION
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Dim resources As
System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(_Class))
Me.SqlSelectCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlInsertCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlUpdateCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlDeleteCommand1 = New System.Data.SqlClient.SqlCommand
Me.SqlDataAdapter1 = New System.Data.SqlClient.SqlDataAdapter
Me.SqlConnection1 = New System.Data.SqlClient.SqlConnection
.....
.....
Me.SqlInsertCommand1.CommandText = resources.GetString("SqlInsertCommand1.CommandText")
Me.SqlInsertCommand1.Connection = Me.SqlConnection1
Me.SqlInsertCommand1.Parameters.AddRange(New System.Data.SqlClient.SqlParameter() {New System.Data.SqlClient.SqlParameter("@MAIN_FACILITY_USED", System.Data.SqlDbType.NVarChar, 0, "MAIN FACILITY USED")
下一行的內容我無法到達有關sqlinsertcommand的參數的集合,但可以通過以下代碼到達sqlinsertcommand及其命令文本本身:
Dim flags As BindingFlags = BindingFlags.NonPublic Or BindingFlags.Instance Or BindingFlags.NonPublic
For Each info As FieldInfo In AssemblyInstance.GetType().GetFields(flags)
If info.FieldType.FullName = "System.Data.SqlClient.SqlCommand" Then
cmd = CType(info.GetValue(AssemblyInstance), SqlCommand)
End If
Next
如何通過fieldinfo或> NET Reflection中的其他相關類達到該sqlparameter集合? 看起來很粗魯,但任何幫助甚至建議對我來說都意義非凡。
所以“ cmd”是“ System.Data.SqlClient.SqlCommand”的實例嗎? -是的 那么它就有一個屬性“ Parameters”來保存您的參數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.