如何使用 class 模型作为函数中的变量?

How to use class model as a variable in a function?

问题: 我需要知道 class 模型的数据类型,我可以将其用作普通函数中的变量。

尝试: 我使用对象作为变量来传递任何 class 模型

public object JsonToModel(string JsonModel, object model)
{
    object getModel = JsonConvert.DeserializeObject<model>(JsonModel);
    return getModel;
}

结果: problem result

用法: problem usage

string UserJson = HttpContext.Session.GetString("SignedInUser");
User UserObj = utilities.JsonToModel(UserJson);

注意:用户是 class 模特

if object 会产生问题,因为它无法忍受使用 class 模型作为变量。哪种数据类型可以做到这一点?

试试这个,使用泛型

public T JsonToModel<T>(string json)
{
    return JsonConvert.DeserializeObject<T>(json);
}

使用

string userJson = HttpContext.Session.GetString("SignedInUser");
User user = utilities.JsonToModel<User>(userJson);

我只是看不到你使用这个工具有什么好处,它仍然是同一行代码。如果您添加一些设置,也许会有意义。