1
我正在編寫一個自動SQLCLR部署工具,我正在使用反射來發現必須聲明的過程和函數。所以我用這樣的代碼來構建部署裝配方法所需的T-SQL:ParameterInfo.ParameterType是「SqlBytes&」,如何與typeof()相比
...
if (p.ParameterType == typeof(string))
{
sql = "nvarchar(4000)";
}
...
但這種方法包含在C#中聲明爲out SqlBytes bytes
的參數和參數類型被SqlBytes&
。我無法使用typeof(SqlBytes&)
進行比較,因爲語法無效。所以我對SqlBytes&
類型究竟是什麼以及是否有辦法爲它生成typeof有點困惑。我知道我可以求助於類型名稱(即字符串)比較,而不是我的問題,我更好奇這是什麼類型的&
,看起來像一個C++參考類型,但我估計在+10年與.Net工作我從來沒有注意到他們。
明白了,'typeof運算(SqlBytes).MakeByRefType()' –
@RemusRusanu燁;我已編輯顯示by-val <===> by-ref操作 –