Во-первых, проблема в том, что один из ваших проектов выбирает неправильную сборку, это может быть служба, но, скорее всего, это клиентское приложение.
Доступные конструкторы в CTP 2 v1.5 для DataServiceCollection:
private DataServiceCollection();
internal DataServiceCollection(IEnumerable<T> items);
protected DataServiceCollection(DataServiceContext context, string entitySetName, IEnumerable<T> items, Func<EntityChangedParams, bool> entityChangedCallback, Func<EntityCollectionChangedParams, bool> collectionChangedCallback);
internal DataServiceCollection(DataServiceContext context, string entitySetName, Func<EntityChangedParams, bool> entityChangedCallback, Func<EntityCollectionChangedParams, bool> collectionChangedCallback, IEnumerable<T> items);
Конструкторы, доступные в версии RTM (установленное вами обновление) KB976126:
public DataServiceCollection();
public DataServiceCollection(IEnumerable<T> items);
public DataServiceCollection(DataServiceContext context);
public DataServiceCollection(IEnumerable<T> items, TrackingMode trackingMode);
public DataServiceCollection(DataServiceContext context, string entitySetName, Func<EntityChangedParams, bool> entityChangedCallback, Func<EntityCollectionChangedParams, bool> collectionChangedCallback);
public DataServiceCollection(IEnumerable<T> items, TrackingMode trackingMode, string entitySetName, Func<EntityChangedParams, bool> entityChangedCallback, Func<EntityCollectionChangedParams, bool> collectionChangedCallback);
public DataServiceCollection(DataServiceContext context, IEnumerable<T> items, TrackingMode trackingMode, string entitySetName, Func<EntityChangedParams, bool> entityChangedCallback, Func<EntityCollectionChangedParams, bool> collectionChangedCallback);
internal DataServiceCollection(object atomMaterializer, DataServiceContext context, IEnumerable<T> items, TrackingMode trackingMode, string entitySetName, Func<EntityChangedParams, bool> entityChangedCallback, Func<EntityCollectionChangedParams, bool> collectionChangedCallback);
Я предлагаю, если вы хотите использовать dll CTP, чтобы вы проверили свои ссылки в своем клиентском приложении и любом другом приложении, которое использует System.Data.Services.Client.dll, и перейдите на Microsoft.Data.Services. Client.dll (находится в программных файлах в папке CTP2 ADO.NET Data Services V1.5).
Я также установил последнюю версию, и в настоящее время я использую обе версии на моем ПК, на котором он работает.
Еще одна важная вещь - проверить глобальный кеш сборок, поскольку там будут установлены обе версии (с CTP 2 ddls, имеющим номер версии 99.0.0.0).
Что-то, что я сделал, для библиотек CTP, я добавил ссылки из папки ctp вместо глобального кэша сборок.
Привет
Даниэль Портелла
Обновление : Soulhuntre, это должен быть EntityClassGenerator, который использует ссылка на веб-службу, ссылка на службу должна использовать dll GAC system.data.services.client для генерации классов вместо старого CTP из них.
Есть две вещи, которые вы можете сделать на самом деле, одно - это сделать то, что я сказал выше, а другое - удалить обновленное (удалить КБ), которое должно отменить сделанные изменения. Вы могли бы даже попытаться удалить старую ссылку на службу и создать ее снова, убедившись, что она использует библиотеки CTP для генерации классов.
Это работает для моего решения, потому что я написал свою собственную реализацию DataServiceClientGenerator, чтобы делать волшебные вещи, которые не выполняет поставляемый MS, поэтому я должен запускать обе установки без проблем.
Конец обновления.