【问题标题】:.net 6 The type of namespace could not be found.net 6 找不到命名空间的类型
【发布时间】:2022-07-06 23:09:21
【问题描述】:

我用 .net 6 创建了一个程序。创建时添加一个类,然后在 main 中实例化它。我得到了错误

错误 CS0246 找不到类型或命名空间名称“AbilityScoreCalculator”(您是否缺少 using 指令或程序集引用?)

类代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Ability_Score_Calculator
{
    internal class AbilityScoreCalculator
    {
        // ...
        public void CalculateAbilityScore()
        {
           // ..
        }

    }
}

主要方法代码

AbilityScoreCalculator calculator = new AbilityScoreCalculator();

但是,当我在 .net 5 中执行相同操作时,一切都很好,如下所示

类代码如上

主要方法代码

using System;

namespace Ability_Score_Calculator
{
    internal class Program
    {
        static void Main(string[] args)
        {
            AbilityScoreCalculator calculator = new AbilityScoreCalculator();
            
        }
    }
}

【问题讨论】:

  • 您的“主要方法代码”是否使用顶级语句?

标签: c# .net-5 .net-6.0


【解决方案1】:

尝试将AbilityScoreCalculator 的访问修饰符从internal 更改为public,或确保它与Program 类位于同一命名空间中。

【讨论】:

  • 我不认为这是正确的。使用显式 Program 类时的代码工作正常。我认为真正的问题是 OP 正在使用顶级语句并且想知道为什么命名空间不一样。
猜你喜欢
  • 1970-01-01
  • 2013-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多