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

.NET 7.0项目Font类型引用异常问题求助

.NET 7项目中Font类型找不到的解决方法

1. 先安装对应NuGet包

.NET 7里System.Drawing.Common不是框架自带的程序集,必须手动通过NuGet包管理器安装:

  • Visual Studio操作:右键项目 → 「管理NuGet程序包」 → 搜索System.Drawing.Common,选择兼容.NET 7的稳定版本安装
  • 命令行操作:进入项目目录后执行:
    dotnet add package System.Drawing.Common
    

2. 使用正确的命名空间

别加using System.Drawing.Common;——这个命名空间根本不存在!Font类实际属于System.Drawing命名空间,在代码顶部添加:

using System.Drawing;

编译提示里的「转发至System.Drawing.Common程序集」,指的是Font类的实现所在的程序集,不是让你引用这个命名空间。

3. 非Windows平台的兼容处理(如果需要跨平台)

从.NET 6开始,System.Drawing.Common仅官方支持Windows系统。如果项目要在Linux/macOS运行,有两种选择:

  • 替换为跨平台图形库,比如SkiaSharp、ImageSharp
  • 若必须使用System.Drawing.Common,可在项目文件(.csproj)中添加配置强制开启非Windows支持(官方不推荐,后续版本可能移除该选项):
    <PropertyGroup>
      <RuntimeIdentifier>linux-x64</RuntimeIdentifier> <!-- 替换为你需要的平台RID -->
      <EnableUnixSupport>true</EnableUnixSupport>
    </PropertyGroup>
    

补充:程序集引用是什么?怎么添加?

程序集引用就是项目依赖的.dll文件,在.NET 7这类现代.NET版本中,绝大多数依赖都是通过NuGet包管理的,无需手动找本地.dll文件添加。你之前的问题核心是只加了命名空间,但没安装对应的NuGet包,导致编译器找不到程序集里的类型,所以报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 02:14:58