我必须创建一个 C# Web 服务。我有个问题。可以使用ref
参数吗?比如我有这个方法
//my web service will fill the parameter by reference
int myWSMethod(int parameterA, ref string parameterB);
这可以通过网络服务实现吗?
我必须创建一个 C# Web 服务。我有个问题。可以使用ref
参数吗?比如我有这个方法
//my web service will fill the parameter by reference
int myWSMethod(int parameterA, ref string parameterB);
这可以通过网络服务实现吗?
如果您的问题只是想弄清楚如何从 Web 服务返回多个值,只需返回一个复杂类型即可。
[DataContract]
[Serializable]
public class myWSMethodResponse
{
[DataMember]
public int ErrorCode { get; set; }
[DataMember]
public string Report { get; set; }
}
public myWSMethodResponse myWSMethod(int parameterA)
{
//code here
}
我不确定您为什么要这样做,但基于MSDN,您可以这样做。
Out
和Ref
参数。在大多数情况下,您可以使用 in 参数(
ByVal
在 Visual Basic 中)和out
andref
参数(ByRef
在 Visual Basic 中)。因为out
和ref
参数都表示从操作返回数据,所以如下所示的操作签名指定即使操作签名返回,也需要请求/回复操作void
。例子:
[ServiceContractAttribute] public interface IMyContract { [OperationContractAttribute] public void PopulateData(ref CustomDataType data); }