一個特定的基類,在this page下面的代碼獲得建議以找到從給定類型派生類的類,但是這個代碼不工作,因爲下面一行查找從與羅斯林
var symbol = _model.GetDeclaredSymbol(node);
回報ISymbol,而比預期的INamedTypeSymbol。
在關於this page的常見問題的答案中,爲了獲取變量聲明的類型,建議使用以下代碼段。但是,這在運行時也會引發異常,並表示轉換爲ILocalSymbol無效。
var type = ((ILocalSymbol)model.GetDeclaredSymbol(variableDeclarator)).Type;
我試圖調查Roslyn源代碼找出一種方法,並嘗試使用它們,但目前爲止沒有成功。
我想要做的是檢測從DbContext類的EntityFramework派生的解決方案中的所有類。任何人都可以建議我找到這個方法嗎?提前致謝!
你在運行什麼節點? GetDeclaredSymbol返回什麼? – SLaks
謝謝你的回答,我意識到問題所在。發送給GetDeclaredSymbol方法的節點參數未被正確動態分派。這就是爲什麼它調用GetDeclaredSymbol的錯誤重載。所以我刪除了這個問題。 – remediable