3

在我的 C# 解决方案中,我有多个项目。

其中之一是 OdulaProject(XNA WP7 游戏)。(一)主项目是Editor(WinForms app)(二)

在(I)中是这段代码:

namespace OdulaProject.GameCore.Resources
{
    public class MyLevel
    {
        // TODO: remove!!!
        public static Vector3 GetFieldPosition(Point coordinates)
        {
            return new Vector3(coordinates.X * MyGameConstants.FieldSize.X, coordinates.Y * MyGameConstants.FieldSize.Y, 0);
        }
    }
}

在 (II) 中,我引用了 (I) 和这段代码:

using OdulaProject.GameCore.Resources;

...

MyLevel.GetFieldPosition(new Point(0, 0));

而且我仍然遇到错误:

'OdulaProject.GameCore.Resources.MyLevel' 由于其保护级别而无法访问

4

1 回答 1

0

这可能看起来很棘手,但在具有多个项目的解决方案中,有些可能需要公开而其他人不需要。自由地添加 public 到有问题的类/静态内部可以帮助调试缺少的可访问性。

不用说,这些都应该事后重新评估。

于 2016-10-05T15:15:29.567 回答