0

此控制器的构造函数返回错误“} 预期”。Visual Studio 没有将其识别为构造函数。其他错误包括“方法必须有返回类型”。

这段代码有什么问题?

namespace blahblah.Controllers
{

    public class HomeController : Controller
    {  
        private IUserRepository userRepository;

        public HomeController()
        {     //} expected here
            public Model1Container db = new Model1Container();
            this.userRepository = new UserRepository(db);
        }

        public ActionResult Index()
        {
            ViewBag.Message = "Welcome to ASP.NET MVC!";

            return View();
        }

        public ActionResult About()
        {
             return View();
        }
    }
}
4

1 回答 1

3

您的构造函数应如下所示:

public HomeController()
{   
    Model1Container db = new Model1Container();
    this.userRepository = new UserRepository(db);
}

删除public局部变量附近的单词db。局部变量不能访问访问修饰符,因为它们的范围仅限于声明它们的方法体。

从 C# 语言规范 4.0 开始:

局部变量声明指定类型名称、变量名称和可能的初始值。

于 2013-02-19T23:49:59.220 回答