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

使用Xamarin在Visual Studio开发安卓应用时遇CS0103错误求助

解决Xamarin Android中反复出现的CS0103 "Resource不存在" 错误

我之前也碰到过这个烦人的问题!Xamarin Android里的Resource找不到的问题有时候确实有点顽固,尤其是清理构建暂时解决但改代码又复发的情况,给你几个我亲测有效的排查和解决办法:

1. 检查Resource.designer.cs的生成配置

  • 右键项目中Resources文件夹下的Resource.designer.cs文件,选择属性
  • 确保「生成操作」设置为 Embedded Resource,「自定义工具」设置为 MSBuild:UpdateGeneratedFiles
  • 这个文件是自动生成的资源映射类,一旦生成配置出错,代码变更后就不会自动更新,导致Resource无法识别

2. 验证项目.csproj文件的关键配置

手动打开你的安卓项目.csproj文件,检查是否包含以下配置段,如果缺失或路径错误,手动补充修正:

<AndroidResgenFile>Resources\Resource.designer.cs</AndroidResgenFile>
<AndroidResgenClass>Resource</AndroidResgenClass>
<GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>

同时排查资源文件是否存在重复ID冲突:比如布局文件中有没有重复的android:id属性,这类冲突会导致Resource类生成失败。

3. 彻底清理VS缓存与项目编译文件

有时候VS的缓存会干扰编译流程,除了常规的「清理解决方案」,还可以做这些操作:

  • 关闭Visual Studio,删除项目目录下的bin和obj文件夹
  • 删除VS的组件模型缓存目录(路径示例:C:\Users\[你的用户名]\AppData\Local\Microsoft\VisualStudio\[你的VS版本号]\ComponentModelCache)
  • 重新打开VS,执行「重新生成解决方案」

4. 再次确认资源文件的命名与存放规则

虽然你提到文件名正常,但再仔细核对以下规则:

  • 所有资源文件名必须是小写字母+下划线,不能包含大写、空格或特殊字符(比如main_layout.xml是正确的,MainLayout.xml是错误的)
  • 资源必须放在Resources对应子文件夹中:布局文件在layout,图片在drawable/mipmap,字符串在values等,不能放错目录

5. 更新Xamarin Android组件

打开Visual Studio的「工具」→「获取工具和功能」,检查Xamarin Android是否有可用的稳定版更新。旧版本的Xamarin偶尔会存在这类编译bug,更新到最新版本往往能解决问题。

这些方法我试过大多数都能解决这种反复出现的Resource找不到问题,你可以逐个尝试,应该能搞定!

内容的提问来源于stack exchange,提问作者Adeptus Mechanicus

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 07:07:05