【发布时间】:2014-09-28 13:11:40
【问题描述】:
使用 Resharper 我收到以下消息:
不明确的调用解决方案 ITicket.sln 项目票务 ITicket\frmMainTicket.cs:530 不明确的调用:void DisableAllFields()(在 frmMainTicket 类中)void DisableAllFields() (在 frmMainTicket 类中) 匹配
我是编码新手,需要一些帮助。如果我正确理解这一点,基本上就是说我正在调用一个方法并且不确定我应该使用什么方法?我以前从未使用过 Resharper。也许我对模糊调用是什么感到困惑,不过我已经对此进行了一些研究。 提前谢谢你。
来自代码:
private void SetViewForBugnetTicket()
{
DisableAllFields();
btnSendBugnetDev.Enabled = false;
}
方法:
private void DisableAllFields()
{
tbSubject.Enabled = false;
cmbCreatedBy.Enabled = false;
cmbDepartment.Enabled = false;
cmbCompany.Enabled = false;
dtpCreatedOn.Enabled = false;
dtpAssignedOn.Enabled = false;
dtpDueDate.Enabled = false;
cmbAssignedBy.Enabled = false;
cmbMainTech.Enabled = false;
cmbStatus.Enabled = false;
cmbPriority.Enabled = false;
cmbCategory.Enabled = false;
cmbTicketType.Enabled = false;
radBtnNoTraining.Enabled = false;
radBtnYesTraining.Enabled = false;
btnAddNoteDev.Enabled = false;
tbNoteAdd.Enabled = false;
rtbDescription.Enabled = false;
tsBtnSaveTicket.Enabled = false;
btnSetStatus.Enabled = false;
btnResolve.Enabled = false;
tbResolution.Enabled = false;
cmbResolution.Enabled = false;
btnBrowse.Enabled = false;
}
【问题讨论】:
-
这是说你在 2 个不同的类中有 2 个同名的方法“void DisableAllFields() (in class frmMainTicket) void DisableAllFields() (in class frmMainTicket) match”。在 frmMainTicket 和 frmMainTicket 中有一个名为 DisableAllFields 的方法。我很困惑为什么会这样说,因为这两个类都具有相同的名称
-
如果在不同的命名空间中有两个
frmMainTicket类会发生这种情况吗? -
Resharper 是在说这个还是你得到编译器错误? Resharper 尝试先发制人地显示警告/错误,但这并不总是与编译器匹配。归根结底,只有编译器错误才重要,就生成 exe / dll 而言。
-
完全没有编译错误,程序运行良好。
标签: c# resharper ambiguous invocation resharper-8.0