C# 使用 system.io 在我的班级中没有 woking,但在 main 中工作

C# using system.io not woking in my class but works in main

提问人:badtoy1986 提问时间:10/18/2012 最后编辑:Patrick D'Souzabadtoy1986 更新时间:5/3/2013 访问量:1636

问:

我正在处理一个我不记得以前遇到过的问题。 我正在使用 VS2012 C#

当我添加使用时;在我的主程序中,一切正常,但是当我将其添加到我的类文件中时,它不会让我使用所有方法。System.IO

using System;
using System.Collections.Generic;
using System.IO;
using System.Data.SQLite;
using System.Linq;
using System.Text;
using System.Threading.Tasks;


namespace FoxySearch
{    
    class FoxySearch
    {
         File.    <<<<----- here i want to add File.Exists("Blablalba")
    }
}

出于某种原因,它不会让我添加它。一旦我添加句点,智能感知就会关闭并且不显示任何选项。当我自己输入时,它显示红色并说,

System.IO.File.Exists(string)是一个方法,但像类型一样使用

C# .NET using-directives

评论

3赞 tukaef 10/18/2012
您不能将其写入类定义中。

答:

6赞 Jon Skeet 10/18/2012 #1

你还没有真正给出足够的代码来确定,但听起来你可能试图直接在类声明中编写“普通代码”,而不是在方法或属性声明中。

类只能包含声明 - 方法声明、字段声明等。你不能写:

class Foo
{
    int i = 10; 
    Console.WriteLine(i);
}

等。第一行是有效的,因为它是一个变量声明 - 第二行不是,因为它只是一个方法调用。如果将代码移动到方法中,则可以:

class Foo
{
    public void Bar()
    {
        int i = 10; 
        Console.WriteLine(i);
    }
}

此外,我建议你重新审视你的命名 - 对类和命名空间使用相同的名称是一个坏主意

评论

1赞 horgh 10/18/2012
@user1208410 不要那么强烈地责备自己)))但如果是这样的话,请接受答案
1赞 user1693593 10/18/2012 #2

您需要将其放在函数或子、属性等中。

0赞 Ravindra Bagale 10/18/2012 #3

你在课堂上写过,你不能在那里写。& 还有文件。Exists() 返回布尔值。你必须写这样的东西:

boolean a= File.Exists("bla");
0赞 Kirill Bestemyanov 10/18/2012 #4

您在类中使用 File.Exists() 而不是在方法中使用,这是一个问题。

1赞 Mario S 10/18/2012 #5

您需要将代码放在一个方法中,例如:

class FoxySearch
{
   public bool DoesFileExist(string filePath)
   {
       return File.Exists(filePath);
   }
}
0赞 Sashko 10/18/2012 #6

必须在项目中添加对程序集的引用。