Class ExportRpcContractProxiesAttribute
- Namespace
- StreamJsonRpc
- Assembly
- StreamJsonRpc.dll
Emit source generated proxies for RPC interfaces with public visibility when the interface annotated with JsonRpcContractAttribute is itself public.
[AttributeUsage(AttributeTargets.Assembly, AllowMultiple = false)]
public class ExportRpcContractProxiesAttribute : Attribute
- Inheritance
-
ExportRpcContractProxiesAttribute
- Inherited Members
Properties
ForbidExternalProxyGeneration
Gets or sets a value indicating whether to forbid the source generation of proxies for the RPC interfaces declared in this assembly by other assemblies.
public bool ForbidExternalProxyGeneration { get; set; }
Property Value
Remarks
By default, source generated proxies may be generated for interfaces that are annotated with JsonRpcContractAttribute in the assembly that declares the interface or other assemblies that reference the declaring assembly. Implementations of an RPC interface in another assembly will break when members are added to the interface. To preserve the ability to add members to an RPC interface in the future without recompiling all referencing assemblies, set this property to true, which forces the calling assembly to use the source generated proxies within this assembly or to use dynamically generated proxies at runtime.
Changing or removing existing members is always a binary-breaking change because referencing assemblies may have code that invokes these members.