加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

vb.net – INotifyPropertyChanged.PropertyChanged已实现但未实

发布时间:2020-12-17 07:18:24 所属栏目:百科 来源:网络整理
导读:我经常看到一个奇怪的构建错误.有时在键入一些代码后,我们会收到以下构建错误. Class 'clsX' must implement 'Event PropertyChanged(sender As Object,e As PropertyChangedEventArgs)' for interface System.ComponentModel.INotifyPropertyChanged'. 和 '
我经常看到一个奇怪的构建错误.有时在键入一些代码后,我们会收到以下构建错误.

Class 'clsX' must implement 'Event PropertyChanged(sender As Object,e As PropertyChangedEventArgs)' for interface System.ComponentModel.INotifyPropertyChanged'.

'PropertyChanged' cannot implement 'PropertyChanged' because there is no matching event on interface 'System.ComponentModel.INotifyPropertyChanged'.

那些错误永远不应该在一起!通常我们可以忽略异常并构建解决方案,但通常这个bug会阻止我们的构建. (使用编辑和继续这很多很烦人)

我们在一个大解决方案中使用Vb.net和c#混合.

删除PropertyChanged事件并重新输入相同的代码!有时修复此问题.

题:

有没有其他人看到这个问题,并有一些建议如何预防他?

我们使用的代码生成器会导致此错误浮出水面,但只是手动编辑某些文件也会触发此异常.使用各种设置在多台计算机上发生此错误.

解决方法

有人在 here讨论了同样的问题.听起来这个版本有一个问题,就是选择旧版本的二进制文件.我会按顺序尝试以下方法:

>验证所有程序集引用在Visual Studio解决方案中尽可能使用项目引用.
>如果并发项目构建存在一些奇怪的文件锁定问题,请禁用构建并行化.转到工具 – >选项,项目和解决方案 – >构建并运行,然后将“parrellel项目构建的最大数量”设置为1.不是最佳解决方案,但它可能有助于缩小问题范围.
>如果锁定某个文件导致程序集无法正确重建,请禁用Hosting Process.对于C#项目,请转到“项目属性”,“调试”选项卡,然后取消选中“启用Visual Studio宿主过程”.对于VB.NET项目,您需要卸载项目,编辑项目文件,并添加< UseVSHostingProcess> false< / UseVSHostingProcess>到每个配置的PropertyGroup.同样,不是最好的解决方案,但你可能不会注意到差异.
>最后,尝试做一个Clean Build来尝试解决它发生的问题(我知道这不是一个修复,但它很容易做到),也是Rebuild may be slightly different than Clean + Build所以如果前者不起作用的话尝试后者.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读