无法满足接口契约
本文关键字:契约 接口 无法满足 | 更新日期: 2023-09-27 18:05:37
我有一个接口和一个实现该接口的类。Visual Studio没有意识到我正在实现接口所需的一个特定方法。我只在构建时得到错误。Resharper没有提醒我代码的任何问题,一切看起来都是正确的。
我的界面public interface IViewFactory
{
IDpaView MakeDpaView();
IFileSelectorView MakeFileSelectorView(IFileService fileService);
IDelqReportView MakeDelqReportView();
}
实施public class ViewFactory : IViewFactory
{
public IDpaView MakeDpaView() {
return new DpaView();
}
public IFileSelectorView MakeFileSelectorView(IFileService fileService) {
var fileSelectorView = new FileSelectorView {
FileService = fileService
};
return fileSelectorView;
}
public IDelqReportView MakeDelqReportView() {
return new DelqReportView();
}
}
IFileSelectorView实现
public partial class FileSelectorView : Form, IFileSelectorView
{
public FileSelectorView() {
InitializeComponent();
}
public IFileService FileService {
set { fileSelector.FileService = value; }
}
public event EventHandler<PathSelectedEventArgs> PathSelected;
private void fileSelector_PathSelected(object sender, PathSelectedEventArgs e) {
if (PathSelected == null)
return;
PathSelected(this, e);
}
}
我在ViewFactory
中没有展示的其他方法工作得很好。问题是,当我构建时,我得到
name.space.DPA.Win。ViewFactory'没有实现接口成员'name.space.Presentation.IViewFactory.MakeFileSelectorView()'…
,但它确实实现了这个方法。到底发生了什么事?
物理计算机重新启动修复了我的问题。我已经尝试了多次干净构建并多次重启Visual Studio,但我想有时没有什么比完全重启更重要的了?