Assume the assembly dll:
using Microsoft.SqlServer.Server;
using System.Data.SqlClient;
using System.Data.SqlTypes;
using System;
using System.Text;
namespa
Try
CREATE FUNCTION NormalizeString(@s nvarchar(max),
@normalizationForm nvarchar(50))
RETURNS nvarchar(max)
AS EXTERNAL NAME CLRFunctions.[CLRFunctions.T].NormalizeString
I just busted my skull on this in Visual Studio 2017, building a CLR in VB. What I found out, when creating the procedure in SQL, THE EXTERNAL NAME is set as follows:
AssemblyName
.[Assemblyname.ClassNameInVBProgram]
.SubroutineNameInVBProgram
And it is Case Sensitive.
Use Create Assembly
in SQL to create the Sql Assembly
Use Create Procedure
in SQL to create the CLR SP.