小编sum*_*ore的帖子

字段初始值设定项不能引用非静态字段,方法或属性?

我有一个Repository Class和一个Services Class,如下所示:

public class DinnerRepository
{
    DinnerDataContext db = new DinnerDataContext();

    public Dinner GetDinner(int id)
    {
        return db.Dinners.SingleOrDefault(d => d.DinnerID == id);   
    }

// Others Code        
}



public class Service
{
        DinnerRepository repo = new DinnerRepository(); 
        Dinner dinner = repo.GetDinner(5);

// Other Code
}
Run Code Online (Sandbox Code Playgroud)

抛出错误:

字段初始值设定项不能引用非静态字段,方法或属性.

即使我已经使用DinnerRepository类,也要在Service Class中公开它的方法GetDinner().这适用于下面的代码.有没有其他选择,还是标准做法?我不能在这里使用静态方法..

public class Service
{

    public Service()
    {
        DinnerRepository repo = new DinnerRepository(); 
        Dinner dinner = repo.GetDinner(5);
    }

}
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc

16
推荐指数
1
解决办法
4万
查看次数

标签 统计

asp.net-mvc ×1

c# ×1