1

我将 mij WCF WebApi 项目转换为 MVC WebApi 项目。我有一个具有如下属性的模型:

public class ObjectWaarde<T> 
{

    public ObjectWaarde(T objectType)
    {
        ObjectType = objectType;
    }

    /// <summary>
    /// Gets the term to search for.
    /// </summary>
    public T ObjectType { get; set; }

    public object Waardes
    {
        get
        {

            return ObjectType;
        }
        set { ObjectType = (T) value; }
    }
}

当我将此模型发布到我的 ApiController 时,会出现此错误(HTTP 500):

对象“System.RuntimeType”上的属性访问器“DeclaringMethod”引发了以下异常:“只能在 Type.IsGenericParameter 为 true 的类型上调用方法。”

4

1 回答 1

3

该问题是由 defaultbodymodelvalidator 引起的。

这是一个已知问题: http ://aspnetwebstack.codeplex.com/workitem/225

我找到的唯一解决方案是禁用模型验证器。

GlobalConfiguration.Configuration.Services.Clear(typeof(IBodyModelValidator));

于 2012-08-21T11:43:27.250 回答