我创建了WCFService和WindowsFormApp。在服务中,我有3个功能。其中两个将整数作为参数并返回整数。另一个接受一个字符串并返回一个字符串。
当我尝试调用带整数的两个函数(在WindowsFormApp中)时,程序认为我正在尝试在“ Reference.cs”中调用其他函数,而不是从我创建的服务中调用。字符串函数没有这个问题并且可以正常工作,但是2个int函数在“ Reference.cs”中调用了其他一些void函数。
这些是提到的函数,也是我想调用的函数。该文件是“ Service1.svc.cs” `
public int c2f(int c)
{
int num = c * 9 / 5 + 32;
return num;
}
public int f2c(int f)
{
int num = (f - 32) * 5 / 9;
return num;
}
public string sort(string s)
{
String str = String.Join(",", s.Split(',').Select(x => int.Parse(x)).OrderBy(x => x));
return str;
}
这是它正在调用的函数(这不是我想要的)。这是在“ Reference.cs”中
public void f2c(int f, [System.Xml.Serialization.XmlIgnoreAttribute()] bool fSpecified, out int f2cResult, [System.Xml.Serialization.XmlIgnoreAttribute()] out bool f2cResultSpecified) {
object[] results = this.Invoke("f2c", new object[] {
f,
fSpecified});
f2cResult = ((int)(results[0]));
f2cResultSpecified = ((bool)(results[1]));
}
我花了好几个小时试图解决问题,但无济于事。有人可以帮忙吗?
我如何调用函数:将按钮添加到WindowsFormApp并双击后,在按钮方法中,我有Service1 serv = new Service1();
。然后,如果我要编写serv.sort("some string")
,它将引用我想要的第一个代码块中的函数。如果我要编写serv.f2c(0)
,则会出现一个错误,提示我缺少参数,并且经过仔细检查,它告诉我我是在第二个代码块中引用该函数,这不是我想要的。希望这能提供更多的见识。