gpt4 book ai didi

.net - 程序集生成和类型问题

转载 作者:行者123 更新时间:2023-12-02 08:30:32 26 4
gpt4 key购买 nike

我的应用程序生成一个新类型 Foo 并将其写入新程序集。然后我创建一个 Foo 类型的对象并将其序列化。如果我删除程序集并在尝试反序列化 Foo 对象时重新创建它,它会告诉我无法将类型 Foo 转换为类型 Foo。它认为这些是不同的类型。有没有办法来解决这个问题?

编辑:我无法控制序列化。
编辑:我们发现版本指南总是不同的。这个 guid 是什么以及我们如何指定它?

最佳答案

我认为当您使用二进制格式化程序时,模块版本ID(MVID)被写入序列化中。当您想要反序列化时,它会在程序集中搜索具有该 MVID 的类型。这是不好的地方。您无法控制 MVID。这是好处。您可以打开 dll 文件,找到 MVID 并将其替换为您的 MVID。我通过使用十六进制编辑器更改 MVID 进行了测试,它有效。

关于.net - 程序集生成和类型问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5371585/

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