如何从JavaScript调用通用WebAPI操作?并传递T
类型。
C#:
public class ClassUtilitiesController : ApiController
{
[HttpPost]
public string GetClassNamespace<T>()
{
return typeof(T).FullName;
}
}
JavaScript的:
$.post('/api/ClassUtilities', {
T: 'string',
// ...
});
我需要一个从输入T
类型返回内容的操作(例如typeof(T).FullName
或创建实例并调用方法)。我该怎么办?
答案 0 :(得分:-1)
POST的JSON数据请求它实际上是一个字符串,这意味着你必须反序列化是你想要的对象。
尝试:
public class ClassUtilitiesController : ApiController
{
[HttpPost]
public string GetClassNamespace(string data)
{
T t;
try
{
t = JsonConvert.DeserializeObject<T>(data);
}
catch (Exception e)
{
return e;
}
return t.FullName;
}
}