我尝试在我的 VS 2010 MVC3 应用程序中实现 LinkedIn 身份验证。我参考来源
博客网站中的代码。但是我发现在构建代码时发生了错误。
请看下图。
此“T”对象中需要任何引用。
请帮忙。
更新问题
我根据@StuartLC 更新我的问题
我尝试在我的 VS 2010 MVC3 应用程序中实现 LinkedIn 身份验证。我参考来源
博客网站中的代码。但是我发现在构建代码时发生了错误。
请看下图。
此“T”对象中需要任何引用。
请帮忙。
更新问题
我根据@StuartLC 更新我的问题
您需要像这样更改方法签名:
private T Deserialize<T>(string xmlContent)
然后,您每次调用该方法时都需要明确地提供类型参数,因为T
无法推断(例如从参数中),即
var widget = Deserialize<Widget>(someXmlString);
编辑根据@pswg 的评论,如果这样做有意义,您也可以使整个类通用。然后,您不需要在Deserialize
方法中指定类型参数,因为它现在是类中固有的。public
但是,如果要在类之外调用该方法,则需要使该方法更加可见(例如)。
var widgetDeserializer = new MyDeserializerClass<Widget>();
var widget = widgetDeserializer.Deserialize(someXmlString);
您需要指定反序列化对象的类型...
private T Deserialize<T>(string xmlContent)
{
....
}
它应该是这样的
private T FuncName<T>(T param) where T : class
{
return param;
}