Подтвердить что ты не робот

Linq to SQL создает дубликаты файлов дизайнера

У меня странная ошибка с моими файлами DBL Linq to SQL, когда я ее сохраняю, вместо сохранения в существующий файл конструктора создается дублирующийся файл.

Это вызывает ошибки повсюду, поскольку существует двусмысленность между конструктором контекста данных внутри файлов file.designer.cs и file1.designer.cs

Есть ли способ исправить эту ошибку, которая не включает удаление и воссоздание файлов dmbl. поскольку эта ошибка происходит во всех моих файлах DBML, некоторые из которых довольно большие.

enter image description here

На приведенном выше рисунке показана проблема, с которой я столкнулся.

4b9b3361

Ответ 1

Не уверен, что могло бы привести к этому (но предложение Marc о том, что файл, находящийся в режиме "readonly" или "не проверен", кажется возможным), но ассоциация описана в файле .proj. Если вы откроете этот файл в текстовом редакторе, вы увидите где-нибудь что-то вроде:

<ItemGroup>
<None Include="Minerva.dbml">
  <Generator>MSLinqToSQLGenerator</Generator>
  <LastGenOutput>Minerva1.designer.cs</LastGenOutput>
  <SubType>Designer</SubType>
</None>

Замените Minerva1.designer.cs на Minerva.designer.cs. Теперь вы можете удалить или исключить файл Minerva1.designer.cs из вашего проекта, а в следующий раз, когда генератор будет вызван, он перезапишет Minerva.designer.cs, как ожидалось.

Ответ 2

У меня была такая же проблема. Оказывается, контроль версий держал файл. Процесс сборки не может воссоздать файл, поэтому он создает новый. Поскольку этот файл автоматически создается, его можно безопасно удалить из элемента управления версиями. Я использую git для моего контроля версий.