You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 6 Blazor WebAssembly引用类库失败,无法识别AppUserDto

Blazor WebAssembly客户端无法识别SharedDTOs类库中AppUserDto的解决办法

排查步骤及解决方案

1. 确认客户端项目已正确引用SharedDTOs类库

  • 右键客户端项目 → 「添加」→「项目引用」
  • 在弹窗里勾选SharedDTOs类库,点击确认
  • 若已引用,先移除再重新添加一次,避免引用失效

2. 检查类库与客户端的目标框架匹配

  • 右键SharedDTOs类库 → 「属性」
  • 查看「目标框架」,必须和Blazor客户端的目标框架一致(比如都是.NET 6),不要用.NET Framework这类和WASM不兼容的框架

3. 验证命名空间与using语句

  • 确认AppUserDto的命名空间确实是SharedDTOs,检查拼写错误
  • 在Cache类顶部添加using语句:
    using SharedDTOs;
    
  • 若还是不行,尝试用完全限定名测试:
    public async Task SetAppUser(SharedDTOs.AppUserDto dto)
    {
        await _localStorage.SetItemAsync<SharedDTOs.AppUserDto>("AppUser", dto);
    }
    
    这种方式能识别的话,说明是using语句或命名空间的配置问题

4. 清理重建解决方案

  • 在Visual Studio里点「生成」→「清理解决方案」
  • 再点「生成」→「重建解决方案」
  • 也可以手动删除客户端项目的bin和obj文件夹后重新生成,清除缓存问题

5. 检查DTO的序列化兼容性

  • 确保AppUserDto的所有属性都是公共的,没有循环引用(Blazored.LocalStorage默认用System.Text.Json序列化,需要DTO符合序列化要求)
  • 若有特殊类型,可添加[JsonPropertyName]等序列化特性,基础DTO一般不需要额外配置

内容的提问来源于stack exchange,提问作者Chuck Duncan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 20:10:13