我刚开始学习WCF。
似乎每个(远程)类的使用都被转换为对服务器的请求(甚至只是在将它们作为参数发送到服务之前设置值)。
这不会导致太多不必要的请求吗?
我能做些什么可以避免浪费时间和时间。带宽?我只想设置一些值。这些属性的Set
部分只有设置相应字段的值。
例如,
interface IService
{
int GetResult(MyComplexType1 input);
}
要使用此服务,我必须首先初始化MyComplexType1
实例,每当我设置MyComplexType1
的任何值时,都会向服务器发出请求。
答案 0 :(得分:2)
在您的代码中调用Web服务通常是一项昂贵的调用,因此您的设计需要考虑这一点。例如,以下服务不会非常有效:
public interface ICalculatorService
{
void SetOperandOne(int value);
void SetOperandTwo(int value);
void SetMode(CalculationMode mode);
int GetResult();
}
以下界面减少了一个所需的调用:
public interface ICalculatorService
{
int GetResult(int operandOne, int operandTwo, CalculationMode mode);
}