【问题标题】:How to use class model as a variable in a function?如何将类模型用作函数中的变量?
【发布时间】:2022-01-04 22:52:52
【问题描述】:

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

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

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);

注意:用户是一个类模型

如果对象造成问题,因为它不能忍受将类模型用作变量。哪种数据类型可以做到这一点?

【问题讨论】:

    标签: c# json asp.net-core .net-core model


    【解决方案1】:

    试试这个,使用泛型

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

    使用

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

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

    【讨论】:

    • 谢谢@Serge,它有效。这样做的目的是创建一个实用程序类来执行一些可以在整个解决方案中使用的全局功能。比如上传图片、发送邮件、处理错误信息、序列化和反序列化模型
    • @MedoofromEgypt 欢迎您!如果有用,请不要忘记接受答案。您可以通过单击我答案旁边的复选标记来完成。
    • 当然,@Serge 先生,我已经这样做了。但我收到了这条信息。感谢您的反馈!您需要至少 15 声望才能投票,但您的反馈已被记录。如果我可以为你投票 100 次,那你应得的 :) 谢谢。
    • @MedoofromEgypt 感谢您的尝试。由于这是您的第一个问题,我只是在教您如何正确使用本网站,以便人们在您下次需要时会尽力帮助您。您显然单击了投票赞成和投票反对图标,它们看起来像一个小三角形。但是这些三角形下面还有另一个图标,它看起来像一个复选标记“V”。你可以点击它。希望它会有所帮助。
    猜你喜欢
    • 2023-04-09
    • 1970-01-01
    • 2021-05-21
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 2021-10-10
    • 2018-11-26
    • 1970-01-01
    相关资源
    最近更新 更多