C#非静态的字段、方法或属性要求对象引用
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#非静态的字段、方法或属性要求对象引用相关的知识,希望对你有一定的参考价值。
using Microsoft.Office.Interop.Excel;
double A1 = 1;
double A2 = 1;
double A3 = 1;
Microsoft.Office.Interop.Excel.WorksheetFunction.Sum(A1, A2, A3);
报错
求如何解决
错误原因:WorksheetFunction接口下的Sum()方法是非静态的,需要用对象来调用。
解决方法:必须先声明ApplicationClass类的对象,再用这个对象来调用。具体代码如下:
static void Main(string[] args)double A1 = 1;
double A2 = 1;
double A3 = 1;
ApplicationClass excel = new ApplicationClass();//声明对象
//用对象调用WorksheetFunction下的方法
double b = excel.WorksheetFunction.Sum(A1, A2, A3);
Console.WriteLine(b);
Console.ReadKey();
回答补充:1.如果在声明ApplicationClass对象时提示“无法嵌入互操作类型 请改用适用的接口”,先在项目的“引用”下找到Microsoft.Office.Interop.Excel,然后右键-属性,将“嵌入互操作类型”修改为false。
2.实际上转到定义可以发现,ApplicationClass类里面有这么一个东西:
而这个类型就是那个WorksheetFunction接口
参考技术A 说明你在定义Rigidbody20类的时候,其中velocity字段不是static的。所以需要先new一个Rigidbody20类的对象,再给这个对象的velocity字段赋值。 参考技术B 回答
VS提示“非静态的字段、方法或属性要求对象引用”时说明该类的中方法没有STATIC不是静态的.有非静态的字段、方法或属性,要求该类必须实例化。即:classA a=new classA();再a.f();
提问namespace Y. DAL
public Goods
public add bool(y.Model.Goods.goods){return Y.DAL. Goods. add(goods)
VS提示“非静态的字段、方法或属性要求对象引用”
这个应该怎么改成静态
回答稍等
提问三层架构分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)再加上实体类库(Model)转载请注明出自朱朱家园http://blog.csdn.net/zhgl76881、实体类库(Model),主要存放数据库中的表字段。操作:(1)先建立实体类库Model,打开项目,在解决方案中右键--》添加--》新建项目--》选中类库--》改名Model--》确定(2)选中Model类库--》Shift+ALT+C--》建立实体类。UserInfo类2、数据访问层(DAL),主要是存放对数据类的访问,即对数据库的添加、删除、修改、更新等基本操作 操作: (1)先建立数据访问层类库DAL,打开项目,在解决方案中右键--》添加--》新建项目--》选中类库--》改名DAL--》确定(2)在DAL中添加对Model的引用,选中DAL--》Alt+P+R--》解决方案--》项目--》选中MOdel--》确定(3)在DAL中添加对system.configuration的引用,选中DAL--》Alt+P+R--》程序集--》框架--》选中System.configuration--》确定(4)建立数据访问类,选中DAL--》Shift+ALT+C--》建立数据访问类。UserDB类
提问你这个我知道,我想问我这个错误解决
你好,你知道我这个问题怎么解决嘛?
回答您好,亲classProgramstring mm; //mm为非静态变量void nn() //nn()方法为非静态方法Console.WriteLine("0",mm);staticvoid Main(string[] args)Program n= newProgram(); //先为非静态变量和方法建立一个索引n.mm="我是非静态变量"; //通过索引n 赋值非静态变量n.nn(); //通过索引 n 调用方法Console.ReadKey();Program n= newProgram(); 这行代码就是为非静态字段、方法、属性建立了索引n
举个C#类中非静态的属性的用法:Class aprivate int b;// 非静态成员变量public int getB()return b;public void setB(int _b)b=_b;//使用:a _a=new a();_a.b=5;//使用方法类似。
急 字段初始值无法引用非静态字段、方法或属性“Common.Helper.ns”
Helper.cs 和NhSql.cs 在同一类库下面 报错类型如标题 报错地方下面有标注
using System;using System.Collections.Generic;using System.Linq;using System.Text;using NHibernate;using Model;
namespace Common public class Helper NhSql ns = new NhSql(); private ISession _session = ns.GetSession();//这里报错 字段初始值无法引用非静态字段、方法或属性 public void add(Object pl) _session.Save(pl); _session.Flush();
把你定义的函数 都加上 static
如
public static ISession GetSession() 参考技术A错误说的很清楚,你应该在Helper这个类的构造函数中进行:
NhSql ns = new NhSql();ISession _session = ns.GetSession();
初始的时候不能引用非静态字段、方法或属性。
追问该怎么改 小白跪求
该怎么改 小白跪求
参考技术B private ISession _session;public Helper()
NhSql ns = new NhSql();
_session = ns.GetSession();
以上是关于C#非静态的字段、方法或属性要求对象引用的主要内容,如果未能解决你的问题,请参考以下文章