Razor中的動態匿名類型會導致RuntimeBinderException我得到了以下錯誤:“Object”不包含“RatingName”的定義當您查看匿名動態類型時,它顯然有RatingName。我意識到我可以用一個元組來完成這個任務,但是我想了解為什么會出現錯誤消息。
3 回答
qq_花開花謝_0
TA貢獻1835條經驗 獲得超7個贊
原因是控制器內部傳遞匿名類型,因此只能從聲明它的程序集中訪問它。由于視圖是單獨編譯的,所以動態綁定程序會抱怨它無法越過該程序集邊界。
但是,考慮一下,來自動態綁定的限制實際上是相當人工的,因為如果您使用私有反射,沒有什么可以阻止您訪問這些內部成員(是的,它甚至在中等信任中工作)。因此,默認的動態綁定程序正在采取強制執行C#編譯規則的方法(不能訪問內部成員),而不是讓您執行CLR運行時允許的操作。
- 3 回答
- 0 關注
- 757 瀏覽
添加回答
舉報
0/150
提交
取消
