xml/Microsoft.Azure.Documents.Linq/UserDefinedFunctionProvider.xml (76 lines of code) (raw):

<Type Name="UserDefinedFunctionProvider" FullName="Microsoft.Azure.Documents.Linq.UserDefinedFunctionProvider"> <TypeSignature Language="C#" Value="public static class UserDefinedFunctionProvider" /> <TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit UserDefinedFunctionProvider extends System.Object" /> <TypeSignature Language="DocId" Value="T:Microsoft.Azure.Documents.Linq.UserDefinedFunctionProvider" /> <TypeSignature Language="VB.NET" Value="Public Class UserDefinedFunctionProvider" /> <TypeSignature Language="F#" Value="type UserDefinedFunctionProvider = class" /> <AssemblyInfo> <AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName> <AssemblyVersion>2.14.0.0</AssemblyVersion> <AssemblyVersion>2.14.1.0</AssemblyVersion> <AssemblyVersion>2.15.0.0</AssemblyVersion> <AssemblyVersion>2.16.0.0</AssemblyVersion> <AssemblyVersion>2.16.1.0</AssemblyVersion> <AssemblyVersion>2.16.2.0</AssemblyVersion> <AssemblyVersion>2.17.0.0</AssemblyVersion> <AssemblyVersion>2.18.0.0</AssemblyVersion> </AssemblyInfo> <AssemblyInfo> <AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName> <AssemblyVersion>2.14.0.0</AssemblyVersion> <AssemblyVersion>2.14.1.0</AssemblyVersion> <AssemblyVersion>2.15.0.0</AssemblyVersion> <AssemblyVersion>2.16.0.0</AssemblyVersion> <AssemblyVersion>2.16.1.0</AssemblyVersion> <AssemblyVersion>2.16.2.0</AssemblyVersion> <AssemblyVersion>2.17.0.0</AssemblyVersion> <AssemblyVersion>2.18.0.0</AssemblyVersion> </AssemblyInfo> <Base> <BaseTypeName>System.Object</BaseTypeName> </Base> <Interfaces /> <Docs> <summary> Helper class to invoke User Defined Functions via Linq queries in the Azure Cosmos DB service. </summary> <remarks>To be added.</remarks> </Docs> <Members> <Member MemberName="Invoke"> <MemberSignature Language="C#" Value="public static object Invoke (string udfName, params object[] arguments);" /> <MemberSignature Language="ILAsm" Value=".method public static hidebysig object Invoke(string udfName, object[] arguments) cil managed" /> <MemberSignature Language="DocId" Value="M:Microsoft.Azure.Documents.Linq.UserDefinedFunctionProvider.Invoke(System.String,System.Object[])" /> <MemberSignature Language="VB.NET" Value="Public Shared Function Invoke (udfName As String, ParamArray arguments As Object()) As Object" /> <MemberSignature Language="F#" Value="static member Invoke : string * obj[] -&gt; obj" Usage="Microsoft.Azure.Documents.Linq.UserDefinedFunctionProvider.Invoke (udfName, arguments)" /> <MemberType>Method</MemberType> <AssemblyInfo> <AssemblyName>Microsoft.Azure.DocumentDB.Core</AssemblyName> <AssemblyVersion>2.18.0.0</AssemblyVersion> </AssemblyInfo> <AssemblyInfo> <AssemblyName>Microsoft.Azure.Documents.Client</AssemblyName> <AssemblyVersion>2.18.0.0</AssemblyVersion> </AssemblyInfo> <ReturnValue> <ReturnType>System.Object</ReturnType> </ReturnValue> <Parameters> <Parameter Name="udfName" Type="System.String" /> <Parameter Name="arguments" Type="System.Object[]" /> </Parameters> <Docs> <param name="udfName">the UserDefinedFunction name</param> <param name="arguments">the arguments of the UserDefinedFunction</param> <summary> Helper method to invoke User Defined Functions via Linq queries in the Azure Cosmos DB service. </summary> <returns /> <remarks> This is a stub helper method for use within LINQ expressions. Cannot be called directly. Refer to http://azure.microsoft.com/documentation/articles/documentdb-sql-query/#linq-to-documentdb-sql for more details about the LINQ provider. Refer to http://azure.microsoft.com/documentation/articles/documentdb-sql-query/#javascript-integration for more details about user defined functions. </remarks> <altmember cref="T:Microsoft.Azure.Documents.UserDefinedFunction" /> <example> <code language="c#"><![CDATA[ await client.CreateUserDefinedFunctionAsync(collectionLink, new UserDefinedFunction { Id = "calculateTax", Body = @"function(amt) { return amt * 0.05; }" }); var queryable = client.CreateDocumentQuery<Book>(collectionLink).Select(b => UserDefinedFunctionProvider.Invoke("calculateTax", b.Price)); // Equivalent to SELECT * FROM books b WHERE udf.toLowerCase(b.title) = 'war and peace'" await client.CreateUserDefinedFunctionAsync(collectionLink, new UserDefinedFunction { Id = "toLowerCase", Body = @"function(s) { return s.ToLowerCase(); }" }); queryable = client.CreateDocumentQuery<Book>(collectionLink).Where(b => UserDefinedFunctionProvider.Invoke("toLowerCase", b.Title) == "war and peace"); ]]></code> </example> </Docs> </Member> </Members> </Type>