gpt4 book ai didi

c# - 如何在不调用构造函数的情况下创建对象?

转载 作者:行者123 更新时间:2023-11-30 17:09:15 27 4
gpt4 key购买 nike

我想实现一些非标准的序列化格式。

当我进行反序列化时,我需要在不调用构造函数的情况下创建对象的实例。


System.Runtime.Serialization.FormatterServices.GetUninitializedObject(Type type).NET Framework 中,但在 Windows 中没有 FormatterServices 类Metro 框架。

有人知道如何在不调用 Windows Metro Framework 中的构造函数的情况下实例化对象吗?

最佳答案

据我所知:你不能。您也不能调用私有(private)/ protected /内部构造函数:.netcore 具有受限反射(类似于 Silverlight 模型,但增加了 GetTypeInfo() 的痛苦)。

我可以建议的唯一选择可能是为用户提供的工厂方法提供单独的支持,该方法可以完成适当的事情,或者类似地传递工厂接口(interface)的能力。这使构造远离序列化引擎,并使其重新控制了解特定类型的代码。

关于c# - 如何在不调用构造函数的情况下创建对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13089291/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com