gpt4 book ai didi

c# - "X"类型的对象无法转换为 "X"类型的对象

转载 作者:IT王子 更新时间:2023-10-29 04:30:05 26 4
gpt4 key购买 nike

(不敢相信这还没有被问到,但我找不到复制品)

在有很多项目的 Visual Studio 中,当我第一次打开解决方案时,有时会收到警告 Object of type "X"cannot be converted to object of type "X"。一般重建似乎让它消失,但有谁知道这是由什么引起的,以及如何避免它?

更新 我在某处读到删除所有 resx 文件并重建会有帮助。我不假思索地尝试了这个。不是个好主意...

最佳答案

这实际上取决于具体情况(含糊不清),但最可能的原因是不同的程序集引用/版本。也许您有一些“顶级”代码引用了 dll 的版本“A”,并引用了一个库,该库引用了类似 dll 的版本“B”;然后:

SomeType foo = someObj.Foo;

将有来自“A”的SomeType(在左侧),.Foo 来自“B”的SomeType。尝试确保您的所有项目都使用您所依赖的所有程序集的相同版本。

另一种情况是在不同的命名空间中使用相同的名称,但这种情况有点明显,我怀疑错误消息会使这种情况变得明显?

还有一些其他场景,在同一个命名空间(但不同的程序集)中具有相同名称的类型相互冲突;这里“外部别名”可以提供帮助,但它是一个完整的 PITA 可以使用。

关于c# - "X"类型的对象无法转换为 "X"类型的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2115593/

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