方法关键字WebMethod,参数关键字Abstract,Constraint,Deprecated

190 阅读2分钟

这是我参与8月更文挑战的第11活动详情查看:8月更文挑战

第八十五章 方法关键字 - WebMethod

指定此方法是否为web method。仅适用于定义为web serviceweb客户端的类。

用法

要指定此方法是web方法,请使用以下语法:

Method name(formal_spec) As returnclass [ WebMethod ] 
{    //implementation }

否则,省略此关键字或将单词Not放在关键字的前面。

详解

此关键字指定此方法作为web方法可用,并且可以通过SOAP协议调用。

重要:在大多数情况下,web方法应该是实例方法,而不是类方法。

默认

如果省略此关键字,则该方法不能作为web method使用。

生成的类

当将此关键字添加到方法并编译类时,类编译器将生成一个额外的类:Package.OriginalClass.MethodNamePackage.OriginalClass是包含web方法的类,MethodNameweb方法的名称。

例如,从类ROBJDemo.DocLiteralWS开始。然后添加一个名为add的方法。当将WebMethod关键字添加到该方法并进行编译时,类编译器将生成类ROBJDemo.DocLiteralWS.Add

不要修改或直接使用这个生成的类; 仅供内部使用。

WSDL的关系

对于web服务,该关键字还会影响生成的WSDL,后者现在包含表示此web方法所需的附加元素。

第八十六章 参数关键字 - Abstract

指定是否为抽象参数。

用法

要指定该参数是抽象的,请使用以下语法:

Parameter name As parameter_type [ Abstract ] = value ;

否则,忽略该关键字或将Not放在该关键字之前。

详解

抽象参数的行为就像没有定义一样。但是,用户可以为文档目的定义抽象参数,并强制在子类中定义此参数的签名。

默认

如果省略此关键字,则参数不是抽象的。

第八十七章 参数关键字 - Constraint

在Studio中指定此参数的用户接口约束。

用法

要为此参数指定用户接口约束,请使用以下语法:

Parameter name As parameter_type [ Constraint = "constraint" ]  = value ;

其中constraintStudio使用的字符串。

详解

Studio Inspector使用约束值为参数提供输入验证。 它的值不会被类编译器使用或强制使用。

这个关键字与Flags关键字一起工作。 例如,如果Flags被设置为ENUM,那么Constraint应该是一个用逗号分隔的可能参数值列表。

Parameter MYPARM [ Constraint = "X,Y,Z", Flags = ENUM ] = "X";

第八十八章 参数关键字 - Deprecated

指定此参数已弃用。 这个关键字会被类编译器忽略,它仅仅提供了一个可读的指示参数已弃用的指示符。

用法

要指定该参数已弃用,请使用以下语法:

Parameter name As parameter_type  [ Deprecated ] = value;

否则,忽略该关键字或将Not放在该关键字之前。