別のクラスから Monsters と呼ばれるにアクセスしようとするとenum
、Visual Studio で "型または名前空間名 'Monsters' が見つかりませんでした (using ディレクティブまたはアセンブリ参照がありませんか?)" というエラーが表示されます。using
私のクラスに関連付けられています。
ここに私の列挙型コードがあります:
namespace Zadify.Enums
{
public enum Monsters
{
Zombie,
Skeleton,
Mummy,
Robot,
Demon
}
}
そして、ここからアクセスする必要がある私のクラスは次のとおりです。
using System;
using System.Xml.Serialization;
using Zadify.Enums;
namespace Zadify
{
[Serializable]
public abstract class Goal
{
//Properties, Other methods
public void AssignMonsterData(int rank)
{
var random = new Random();
var monsterTypeValues = Enum.GetValues(typeof (Monsters)); //Gives the error on "Monsters" here
var monster = (Monsters) monsterTypeValues.GetValue(random.Next(rank - 1)); //Also gives the error on this "Monsters"
//Do other stuff
}
後でswitch
onを実行しましたが、 、 などmonster
を使用するたびに問題ないようです。他にもいくつかあり、すべて正常に動作し、実際、このクラスではまったく同じコードを使用しています。Monsters.Zombie
Monsters.Skeleton
enums
Zadify.Enums
これまでのところ、列挙型を変更してその新しいにnamespace
追加し、別のファイルにコピーし、プロジェクトをクリーンアップし、100回再構築しようとしました。これらのクラスには Android コードはありませんが、私は Visual Studio 2010 を使用して Android アプリ用の Mono を作成しています。using
namespace
Monsters
ビルドするまで Visual Studio に問題はないようです。前もって、インテリセンスは正常に動作します。行を取り出すとusing Zadify.Enums;
、それが参照したいものかどうか尋ねられ、Ctrl キーを押しながらクリックすると、適切なファイルが表示されます。
他に提供すべきコードがある場合は、お知らせください。