У меня есть решение (служба WCF), в котором есть много модулей Entity Framework.Каждый DLL назван по-своему.
Когда я (и мои коллеги) запускаю это локально, все работает нормально.Когда мы запускаем автоматическую сборку и копируем файлы на Dev-сервер, все работает нормально.
Но когда мы копируем файлы на тестовый сервер, я получаю сообщение об ошибке:
Resolution of the dependency failed, type = "OrderManagementInterfaces.IOrderModel", name = "(none)".
Exception occurred while: Calling constructor OrderDAL.OrderEntities(System.String connectionString).
Exception is: MetadataException - Schema specified is not valid. Errors:
OrderDataModel.csdl(3,4) : error 0019: The EntityContainer name must be unique. An EntityContainer with the name 'OrderEntities' is already defined.
Itзатем следует со всеми частями моей схемы, говоря, что каждая из них уже определена.Когда я впервые получил эту ошибку, это была ошибка того же типа, но для другого модуля Entity Framework.(Не уверен, важно это или нет.)
Итак, мой вопрос: существует ли настройка IIS, которая может вызвать это?Почему это работает на моем сервере разработки, а не на моем тестовом сервере?
И что я могу сделать, чтобы это исправить.
ПРИМЕЧАНИЕ: Я проверял много раз, чтобы увидетьесли у меня есть дубликат имени модуля или контейнера.Существует только один модуль и контейнер с именем OrderEntities.
Я видел, что иногда это продукт метаданных части строки подключения.Моя строка подключения выглядит следующим образом:
metadata=res://*/OrderDataModel.csdl|res://*/OrderDataModel.ssdl|res://*/OrderDataModel.msl;provider=...
Все остальные совпадают, кроме имени модели данных.
Примечание. При развертывании в IIS.Я удаляю все файлы и копирую только вещи из автоматической сборки.(То же самое в обоих местах.)