Poprosiłem kilka osób, dlaczego używanie xml jako parametru w procedurze przechowywanej nie działa i wszyscy mówili, że tak właśnie jest. Nie mogę tego uwierzyć.C#/SQL - Co jest nie tak z SqlDbType.Xml w procedurach?
command.Parameters.Add("@xmldoc", SqlDbType.Xml);
To gdzie kompilator zwróci błąd i nie można użyć nvarchar beacouse to limiteed do 4k śpiewa. XML byłby idealny, ponieważ może mieć 2 gigigi.
W jaki sposób inne SqlDbTypes działają dobrze i ten jeden retruns błąd?
*
Error: Specified argument was out of the range of valid values. Parameter name: @xmldoc: Invalid SqlDbType enumeration value: 25.
*
może być dobrym rozwiązaniem, aby dołączyć błąd do wiadomości. –
Zakładam, że używasz co najmniej SQL2005 i że twoja kolumna jest zadeklarowana jako typ danych XML? – GregD
jeśli używasz programu SQL Server 2005 lub nowszego, istnieje większy limit wielkości łańcuchów znaków NVARCHAR. Zobacz słowo kluczowe MAX - http://msdn.microsoft.com/en-us/library/ms186939.aspx - MAX wskazuje, że maksymalna długość dla NVARCHAR wynosi 1 073 747 822 –