From msdn website I get the following:
A special data type for specifying structured data contained in table-valued parameters.
It seems my code works with it and without it (pushing table to DB using stored procedure).
Can someone explain what does it do - I didn't understand it from the definition.
In SQL Server, you can define stored procedures and you can pass tables as parameter. This is then called a table valued parameter.
When you are programming in C#, you can pass such a table-valued parameter to the database by using the SqlDbType.Structured
constant.
This post shows an example: How to pass a table-value parameter