I have created a user data table type as below:
CREATE TYPE [dbo].[UDTPASpecMYTest] AS TABLE(
[EmpName] [varchar](max) NULL,
[Empaddress] [varchar](max) NOT NULL,
[EmpCarname] [varchar](max) NULL
)
GO
and declare a procedure as below:
CREATE procedure [dbo].[test]
(
@tblPASpecs UDTPASpecMYTest READONLY
)
AS
BEGIN
select 1
END
While I am calling the procedure from application by passing a datatable it is showing an error:
"Operand type clash: nvarchar is incompatible with UDTPASpecMYTest".
Code in application:
DataColumn workCol = dtbl.Columns.Add("EmpName", typeof(String));
dtbl.Columns.Add("Empaddress", typeof(String));
dtbl.Columns.Add("EmpCarname", typeof(String));
dtbl.Rows.Add("Test", "Test", "Test");
strQuery = "EXEC dbo.test @tblPASpecs=" + dtbl + "";
//call the procedure
CMASConnectionProvider.DMLService.ExecSqlReturnDataSet(strQuery);