命名空间不能直接包含字段或方法等成员。
Posted
技术标签:
【中文标题】命名空间不能直接包含字段或方法等成员。【英文标题】:A namespace cannot directly contain members such as fields or methods. 【发布时间】:2013-12-29 05:28:59 【问题描述】:所以我得到了错误:
我双击它,它会把我带到case: 1002
这一行
#region Vip Seller
case 1002:
switch (npcRequest.OptionID)
case 0:
if (client.Entity.VIPLevel == 6)
dialog.Text("your Are already VIP 6.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
break;
dialog.Text("Hay i will upgrade your VIP for cps");
dialog.Option("[VIP 1] 20k cps.", 1);
dialog.Option("[VIP 2] 20k cps.", 2);
dialog.Option("[VIP 3] 15k cps.", 3);
dialog.Option("[VIP 4] 30k cps.", 4);
dialog.Option("[VIP 5] 15k cps.", 5);
dialog.Option("[VIP 6] 20k cps.", 6);
dialog.Option("Just passing by.", 255);
dialog.Avatar(116);
dialog.Send();
break;
case 1:
if (client.Entity.VIPLevel == 0 && client.Entity.VIPLevel < 1)
if (client.Entity.ConquerPoints >= 20000)
client.Entity.ConquerPoints -= 20000;
client.Entity.VIPLevel = 1;
else
dialog.Text("Please take 20k cps.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
else
dialog.Text("Sorry Can't upgrade any more.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
break;
case 2:
if (client.Entity.VIPLevel == 1)
if (client.Entity.ConquerPoints >= 20000)
client.Entity.ConquerPoints -= 20000;
client.Entity.VIPLevel = 2;
else
dialog.Text("Please take 20k cps.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
else
dialog.Text("Sorry Can't upgrade any more.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
break;
case 3:
if (client.Entity.VIPLevel == 2)
if (client.Entity.ConquerPoints >= 15000)
client.Entity.ConquerPoints -= 15000;
client.Entity.VIPLevel = 3;
else
dialog.Text("Please take 15k cps.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
else
dialog.Text("Sorry Can't upgrade any more.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
break;
case 4:
if (client.Entity.VIPLevel == 3)
if (client.Entity.ConquerPoints >= 30000)
client.Entity.ConquerPoints -= 30000;
client.Entity.VIPLevel = 4;
else
dialog.Text("Please take 150k cps.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
else
dialog.Text("Sorry Can't upgrade any more.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
break;
case 5:
if (client.Entity.VIPLevel == 4)
if (client.Entity.ConquerPoints >= 15000)
client.Entity.ConquerPoints -= 15000;
client.Entity.VIPLevel = 5;
else
dialog.Text("Please take 15k cps.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
else
dialog.Text("Sorry Can't upgrade any more.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
break;
case 6:
if (client.Entity.VIPLevel == 5)
if (client.Entity.ConquerPoints >= 20000)
client.Entity.ConquerPoints -= 20000;
client.Entity.VIPLevel = 6;
else
dialog.Text("Please take 20k cps.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
else
dialog.Text("Sorry Can't upgrade any more.");
dialog.Option("I see.", 255);
dialog.Avatar(116);
dialog.Send();
break;
break;
#endregion
关于如何修复的任何建议?
【问题讨论】:
您是否考虑过不直接将您的方法和字段(和语句)放在命名空间中?而是使用命名空间来存储一个类来存储一个方法来存储一个语句。我猜这是 C#? 你的代码中有太多没有上下文的东西。例如,什么是“对话”、“客户端”和“npcRequest”?我们无法从我们坐的地方读懂你的想法或看到你的屏幕。 "A namespace cannot directly contain members such as fields or methods" in Net.Reflector的可能重复 【参考方案1】:好吧,case 语句应该在函数定义内,所以我猜你在某处缺少右括号,而这段代码似乎在命名空间内。 (顺便说一下,这里的缩进程度令人不安……)
【讨论】:
以上是关于命名空间不能直接包含字段或方法等成员。的主要内容,如果未能解决你的问题,请参考以下文章
我正在尝试统一编写枪支脚本,但它说命名空间不能直接包含字段或方法等成员[重复]
Assets\Footsteps.cs(5,20):错误 CS0116:命名空间不能直接包含字段或方法等成员 [重复]