【问题标题】:No parameterless constructor defined for this object. MVC, Angular没有为此对象定义无参数构造函数。 MVC,角度
【发布时间】:2014-06-17 08:49:35
【问题描述】:

我在这里看了很多文章,但似乎没有一篇适合我的情况。如果它有助于或与问题有关,我正在使用 ninjectMVC 进行依赖注入。

我有一个这样的 Angular $http:

$http({
    method: 'POST',
    url: '/Lookup/GetChangeOptions/'
}).success(function (data) {
    console.log(data);
    var test = data;
    //$scope.changeOptions = data;
}).error(function (jqXhr, textStatus, errorThrown) {
    console.log(errorThrown);
});

调用我的控制器:

public class LookupController : Controller
{
    private readonly ILookupService _lookupService;

    public LookupController(ILookupService lookupService)
    {
        _lookupService = lookupService;
    }

    public JsonResult GetOtherIssues()
    {
        var otherIssues = _lookupService.GetOtherIssues();

        return Json(otherIssues);
    }

    public JsonResult GetChangeOptions()
    {
        var changeOptions = _lookupService.GetChangeOptions();

        return Json(changeOptions);
    }
}

这个电话给了我错误:

“System.MissingMethodException:没有为此对象定义无参数构造函数。”

我不确定是什么导致了这个问题。我过去使用过类似的结构,没有任何问题。如果我需要放置我的服务代码,请告诉我,但是当我调试调用时..我在控制器中的断点甚至没有被命中。

【问题讨论】:

  • 您的 ioc 容器是否已正确注册?
  • 就是这样,真是个愚蠢的错误。非常感谢老板。由于之前的问题,我从项目中排除了 IOC 初始化,忘记重新添加它。您能否将其发布在新帖子中,以便我将其标记为答案:-)

标签: asp.net-mvc


【解决方案1】:

确保您的 IoC 容器仍在解析。

【讨论】:

    猜你喜欢
    • 2018-02-11
    • 1970-01-01
    • 2021-12-21
    • 2010-11-24
    • 2013-04-25
    • 2017-09-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多