C# 参数不匹配异常,即使参数计数正确
请参考下面的代码 接口中的方法签名C# 参数不匹配异常,即使参数计数正确,c#,unit-testing,lambda,moq,C#,Unit Testing,Lambda,Moq,请参考下面的代码 接口中的方法签名 OrganizationVM GetParty(int param1, int param2, int param3); 试验方法 [TestMethod] public void GetOrganizationByPartyRoleId() { int param1 = 1;int param2 = 1;int param3 = 1; OrganizationVM org = this.MockManager.Get
OrganizationVM GetParty(int param1, int param2, int param3);
试验方法
[TestMethod]
public void GetOrganizationByPartyRoleId()
{
int param1 = 1;int param2 = 1;int param3 = 1;
OrganizationVM org = this.MockManager.GetParty(param1, param2, param3);
Assert.IsNotNull(org);
}
测试项目的构造函数
int partyId = 2;
mockPartyManager.Setup(mr => mr.GetParty(It.IsAny<int>(), It.IsAny<int>(), It.IsAny<int>())).Returns((int i) => organizationList.Where(x => x.partyID == i).Single());
int partyId=2;
mockPartyManager.Setup(mr=>mr.GetParty(It.IsAny(),It.IsAny(),It.IsAny()).Returns((int i)=>organizationList.Where(x=>x.partyID==i).Single());
这个扔
参数计数不匹配。
例外。如何解决这个问题
您有带有3个参数的GetParty(int-param1、int-param2、int-param3)
,但在返回中,您只使用了一个参数。把它改成这样
.Returns((int i, int j, int k) => organizationList.Where(x => x.partyID == i).Single());
您有带有3个参数的GetParty(int-param1、int-param2、int-param3)
,但在返回中,您只使用了一个参数。把它改成这样
.Returns((int i, int j, int k) => organizationList.Where(x => x.partyID == i).Single());