无法隐式将'Provider.Classes.Credit Card'转换为'Newtonsoft.Json.Linq.JToken'

时间:2013-06-26 13:30:50

标签: c# asp.net json exception json.net

我有一个名为CreditCard的课程。这是它的代码:

现在,在一个Web服务文件中,我正在从数据库中读取一些数据并加载一些CreditCard对象的字段。

以下是代码:

//get data from database

if (rdr.HasRows)
{
    CreditCard card_details = new CreditCard();

    while (rdr.Read())
    {
        card_details.CardName = rdr["C_Name"].ToString();
        card_details.LastFour = rdr["Last_Four"].ToString();
    }
}

JObject obj = new JObject();
obj["Success"] = success;
obj["Card_Details"] = card_details;

问题是当我在第二行到最后一行传递对象作为JObject参数时,我收到以下错误:

  

无法隐式转换'Provider.Classes.CreditCard'   'Newtonsoft.Json.Linq.JToken'

有解决方法吗?我正在使用Newtonsoft JSON DLL。谢谢:))

更新

这样做不起作用。

obj["Card_Details"] = (Newtonsoft.Json.Linq.JToken)card_details

It says: Cannot convert type ''Provider.Classes.CreditCard' to 'Newtonsoft.Json.Linq.JToken'

1 个答案:

答案 0 :(得分:2)

试试这个:

JObject obj = (JObject)JToken.FromObject(card_details);

以下是JToken.FromObject

的文档