Надеюсь, некоторые из вас, возможно, столкнулись с этим требованием: - У меня есть настольный продукт, который мы планируем перенести в облако.Мы будем использовать только одну базу данных в SQL-Azure и объединять базы данных всех клиентов.Для слияния у нас есть следующие опции: -
*.Наличие NewCustomerID и существующего TableID в качестве составного первичного ключа.
pros - Легко экспортировать БД, так как будет легко экспортировать связанные таблицы с внешним ключом, доступным, как он есть вмастер столы.- Переход от облака к базе данных в помещении легко возможен
cons - почти у каждой таблицы будет составной первичный ключ и - сомнение в наличии проблемы с перфорированием (многие считают, что после поиска в Googleсоставной ключ шуд не вызывает перф проблем).Сначала код EF может вызвать некоторые проблемы.
*.Имея новый первичный ключ с автоинкрементом и сохраняя его, NewCustomerID и OLD TableID key
pros - связь между таблицами будет основываться на одном ключе и легко писать запросыи EF кодируют первые отношения.
cons - один дополнительный ключ и сохранение старого ключа
Пожалуйста, предложите свой выбор или если вы ищете совершенно новый способ справиться с таким сценариемв лазурной воде