Вызов веб-службы: неожиданный конец файла при анализе имени - PullRequest
1 голос
/ 31 января 2012

Я создал веб-службу (приложение веб-службы ASP.NET, платформа .NET Framework 3.5), которая обращается к базе данных, извлекает данные и возвращает их клиенту как DataTable тип.

Когда я вызываю этот веб-сервис из клиентского приложения, я получаю сообщение об ошибке "Ошибка в XML-документе (1, 36276)" с внутренним исключением "Неожиданный конец файла при Произошло разбор имени. Строка 1, позиция 36276. "

Я попытался уменьшить объем данных, возвращаемых запросом (SELECT TOP 1) - ошибка исчезла. Но мне нужны все мои данные :) (118 строк с 30 столбцами)

Я полагаю, что проблема в том, что строка ответа веб-службы не соответствует буферу сериализации по умолчанию (вероятно, 4 КБ), и, следовательно, существует «Неожиданный конец файла».

Как я могу увеличить длину (или, возможно, тип) буфера сериализации веб-службы?

Код веб-службы:

[WebMethod]
public DataTable GetTargetAchievement()
{
    var dt = new DataTable("TableName");

    using (var conn = new SqlConnection(GetConnectionString()))
    {
        using (var da = new SqlDataAdapter("select * from [Table] ORDER BY 1,3,2; ", conn))
        {
            da.Fill(dt);
        }
    }

    return dt;
}

Код клиента (WPF):

private void btnCallService_Click(object sender, RoutedEventArgs e)
{
    TAA.AuditService service = new TAA.AuditService();
    var dt = service.GetTargetAchievement();

    lbxList.ItemsSource = dt.DefaultView;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...