У меня есть хранимая процедура, которая использует оператор FOR XML в конце его и возвращает меня некоторый XML.
Я использую.NET 4 и Платформа Объекта и когда я делаю функциональный импорт этой хранимой процедуры и попытки назвать ее через Платформу Объекта, это усекает возврат в 2 033 символах.
Я подкачал Платформу Объекта для традиционного подхода ADO.NET для вызова хранимой процедуры, которая имела ту же проблему - усеченный в 2 033 символах - который является, когда я столкнулся со следующей статьей MSDN, объяснив, что это дизайном и использовать метод "ExecuteXMLReader" для преодоления его:
http://support.microsoft.com/kb/310378
Таким образом, это работает теперь временным приспособлением, но я хотел бы использовать импорт функции Платформы Объекта, таким образом, я не путал код ADO.NET с кодом EF.
Есть ли некоторый способ, которым я могу использовать функциональный импорт в EF, возвратить XML и преодолеть символьный предел 2033 года?
С уважением
bgs264
Сегодня я столкнулся с той же проблемой.
Вызов функции EF возвращает XML в "кусках" длиной 2033 строки (например, если ваш XML был длиной 5000 символов, вы получите 3 результата: 2 из 2033 символов и 1 из 934 символов)
Вы можете легко добавить эти куски, чтобы вернуть полный список XML.