У меня есть веб-сервис, который при обновлении на одном компьютере с VS2008 работает отлично, а на другом - нет. Критическим отличием является содержимое автоматически сгенерированного Reference.cs.
В правильно функционирующей среде методы имеют полностью определенные имена классов, ссылаясь на классы в библиотеке классов. Однако в проблемной среде имена классов являются неквалифицированными, а частичные классы объявляются в конце файла. Э.Г.
public string MyMethod(MyClass pr_Class)
...
public partial class MyClass {
}
против
public string MyMethod(Class.Library.Namespace.MyClass pr_Class)
Это вызывает ошибки, такие как:
'<ClassType>' is an ambiguous reference between <ClassLibraryNamespace>.ClassType and <WebReferenceNamespace>.ClassType
Код находится под контролем исходного кода. Проверка в рабочей среде работает сразу, проверка в проблемной среде будет работать только в том случае, если файл reference.cs отредактирован вручную, чтобы быть похожим на рабочие среды. Для переноса проекта вручную из проблемной среды в рабочую требуется только «Обновить веб-ссылку», чтобы разрешить компиляцию. Оба файла Reference.cs утверждают, что автоматически генерируются одной и той же версией инструмента. Настройки из хорошей среды были экспортированы в другую. Пока безуспешно ...
Любые идеи будут с благодарностью!
Мэтт