非静态的字段,方法或属性。。。。。。要求对象引用

来源:互联网 发布:产品效果图制作软件 编辑:程序博客网 时间:2024/06/10 17:31

遇到C# 报错 “非静态的字段、方法或属性 要求对象引用”,一开始以为要加上ref或者out,

结果试过也不行。百度易一下才发现是这是因为类的静态方法规定的,类中静态的方法、成员函数只能访问静态的数据成员或者静态的方法。
static void Main(string[] args) //这使用了关键字static代表是静态方法,如果Main方法里面要调用外面的方法或者函数必须是静态的方法或者是函数。
C#中就连static void Main(string[] args)要访问这个方法外面的变量都得是静态的。

这些都是在类中,对于访问其它类就可以了。
如:Main函数中访问其它类,就不用加Static



下面这段代码调用就会报错 :“非静态的字段、方法或属性 要求对象引用”

private  FileStream SelectFilePieces(FileStream fileData, string tempFilePath, int eachLength)

        {
         。。。。。
         
        }


  public static void PostFile(Uri requestUri, NameValueCollection postData, string fileName,
                                           string fileContentType, string fileFieldName, CookieContainer cookies,
                                           NameValueCollection headers,string tempFilePath)

        {

       FileStream  f=SelectFilePieces( fileData, tempFilePath,eachLength)   ;

           。。。。。。

            }

只需要加上static

private staticFileStream SelectFilePieces(FileStream fileData, string tempFilePath, int eachLength)

        {
         。。。。。
         
        }
原创粉丝点击