错误“名称空间不直接包含成员,如字段或方法”

我试图build立我的C#项目,我收到错误消息“名称空间不直接包含成员,如字段或方法”。 它正在标记app.config文件的第一个字符(小于符号)。

我已经检查了我的所有文件中的variables或函数直接在命名空间内的地方 – 什么也没有发现。 app.config看起来很好。

谷歌正在失败我,我拉我的头发。 什么可能导致这个错误?

人物! 只要我终于分手,问我find答案的问题…

app.config文件属性部分(以某种方式)列出了“编译”的生成操作,当它应该被设置为“无”。

这个世界如何变了? 我知道我没有改变它。 哎呀…

哦,至less现在正在build设。 希望别人能从我的hairloss中受益。

我设法重现了这个错误。

检查app.config文件的属性。 Build Action应为None ,不能Compile

当您尝试将字段或成员直接添加到名称空间时,会发生此错误。 鉴于它指向app.config可能是VS处于不良状态。 尝试closures并重新打开Visual Studio,看看错误消失。

如果失败,请尝试重build并从构build输出窗口发布结果到您的问题。

我这样解决:右键单击.axml文件 – > Build Action – > AndroidResource(xamarin studio)

我有同样的错误。 检查app.config是否设置为none,没有问题。 经过30分钟的检查和重新检查,我重新启动VS,并做了这件事。 它通常可以解决90%的不合逻辑错误。 叹息。

我在网站上的代码有类似的问题。 问题原来是一个额外的结束括号,导致我的课结束后page_load()。 总是检查这样的愚蠢的语法错误。

我正面临与XML文件相同的问题。 这是由于.net编译器试图编译这个只用于DATA目的的XML,因此不需要编译。

修复:转到此文件的属性,并将生成操作更改为编译的内容。

谢谢

在我的情况下,我错误地把一个新的function在控制器类之外。 这是我在ASP.NET MVC中的代码,这是错误。

 public class HomeController : Controller { public class HomeController : Controller { // GET: Home public ActionResult Index() { return View(); } } [HttpPost] public string Insert(string name, string age, string standard, string percent, string address, string status) { //some code return "value"; } } 

它应该是这样的:

 public class HomeController : Controller { public class HomeController : Controller { // GET: Home public ActionResult Index() { return View(); } [HttpPost] public string Insert(string name, string age, string standard, string percent, string address, string status) { //some code return "value"; } } }