无法实现转换';Provider.Classes.CreditCard';到';Newtonsoft.

本文关键字:CreditCard Newtonsoft Classes Provider 实现 转换 | 更新日期: 2023-09-27 18:20:02

我有一个名为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'

无法实现转换';Provider.Classes.CreditCard';到';Newtonsoft.

试试这个:

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

这是JToken.FromObject 的文档