У меня только что был сбой ноутбука (пролилась вода). Я скопировал свой рабочий код (резервное копирование 2 дня назад) с ноутбука с Windows Server 2008 на ноутбук с ОС Vista, работающий под управлением Visual Studio 2008 SP1. Оба работают под управлением .NET 3.5 SP1.
У меня есть вызов веб-метода, который возвращает информацию о продукте.
Некоторые поля веб-службы (работающие на размещенном сервере) следующие:
public class Product
{
[XmlAttribute("sku")]
public string SKU;
[XmlAttribute("name")]
public string Name;
[XmlAttribute("category")]
public string CategoryName;
[XmlAttribute("categoryKey")]
public string CategoryKey;
public List<ProductSectionInfo> Sections;
public List<MediaItem> MediaItems;
public string Foo = "bar";
}
public class MediaItem
{
[XmlAttribute("type")]
public string Type;
[XmlAttribute("imageKey")]
public string ImageKey;
[XmlAttribute("path")]
public string Path;
[XmlAttribute("thumbnailPath")]
public string ThumbnailPath;
[XmlAttribute("thumbnailImageKey")]
public string ThumbnailImageKey;
[XmlAttribute("selectable")]
public bool Selectable;
}
Когда я запускаю веб-метод 'GetProduct'
, свойство 'Sections'
заполняется в моем клиенте C # (на новом ноутбуке), а свойство 'MediaItems
'- нет. Он просто появляется как ноль в окне часов.
Так что я смотрю в Fiddler, и оба заполняются в XML. Оба являются списками, которые определены в моем прокси как стандартные [] массивы.
Возможно, вы заметили, что я добавил свойство 'Foo' выше. Я сделал это на сервере, перекомпилировал и заново создал веб-ссылку. Мне удалось проверить, что в клиенте свойство 'Foo' встречалось. Так что это не значит, что MediaItems пишется с большой буквы или что-то в этом роде.
Я совершенно уверен, что на этом новом ноутбуке есть что-то, что отличается от другого. Я действительно не написал ничего нового, сделал только изменения в другом месте. И я даже не воссоздал сервисный прокси-сервер, пока не заметил проблему. Другой экземпляр моего клиента, работающий на тестовом сервере, работает нормально, попав в тот же сервис.
Фиксированный ноутбук появится завтра, но я бы очень хотел разобраться с этим. Я довольно озадачен. Я видел много разных странных вещей, как это раньше, но действительно не вижу, что здесь происходит. Можно ли как-то отладить в прокси?