基于.NET 10的Blazor Server组件渲染树出现NullReferenceException的问题求助
基于.NET 10的Blazor Server组件渲染树出现NullReferenceException的问题求助
各位大佬好,我现在在用.NET 10的Blazor Server做项目,最近碰到一个挠头的问题:我的某个Razor组件渲染的时候突然抛出了NullReferenceException,报错指向渲染树的代码,但我愣是搞不明白到底哪里空引用了😅
先把完整的报错信息贴出来:
Unhandled exception rendering component: "Object reference not set to an instance of an object."
System.NullReferenceException: Object reference not set to an instance of an object.
at MyApp.MyComponent.b__0_30(RenderTreeBuilder __builder2) in //MyComponent.razor:line 330
at Microsoft.AspNetCore...
我已经翻来覆去检查了Razor文件第330行附近的代码,看起来都是常规的渲染逻辑——要么是绑定组件的某个属性,要么是循环渲染一个列表。可这个b__0_30是编译后自动生成的渲染委托,光看这个名字完全摸不到头绪,不知道对应我写的哪段代码。
想请教下有没有遇到过类似问题的朋友,能不能给我一些具体的排查方向?比如:
- 有没有什么办法能把编译后的渲染树委托,对应回Razor文件里的具体代码片段?
- 除了直接检查变量是否为null,还有哪些Blazor Server特有的场景会导致渲染时出这种空引用?比如组件生命周期时机不对之类的?
- 有没有实用的调试技巧,能精准定位到到底是哪个对象或者属性在渲染瞬间变成null了?
麻烦各位不吝赐教,谢谢啦!




