В моем приложении ASP.NET MVC есть несколько веб-серверов, которые обращаются к базе данных SQL Server через Entity Framework 6. В базе данных есть две таблицы, между которыми существует одна-одна взаимосвязь.
Раз в день все содержимое обеих таблиц должно быть заменено новым набором данных, который загружается через Интернет из удаленного веб-сервиса. Количество записей может быть в десятках тысяч. Записи не очень большие, примерно по 10 nvarchar и целых полей.
Я планирую, что один веб-сервер загрузит набор данных из удаленной веб-службы в две таблицы SQL Server. Он должен будет удалить старый контент и эффективно загрузить новый контент. В то время как это происходит, другим веб-серверам необходимо запретить доступ к таблицам (возможно, путем блокировки таблиц).
Я ищу быстрые варианты для достижения этого, и их плюсы и минусы. Если есть пакет NuGet или Entity Framework, который сделает это для меня, это будет идеально.
Загрузите их во временные таблицы и MERGE (заявление о слиянии) в ежедневные таблицы использования.