Неверное имя столбца в моем веб-приложении - PullRequest
1 голос
/ 04 апреля 2011

У меня срочная и необъяснимая проблема, поэтому любая помощь будет принята с благодарностью. У меня есть две разные базы данных, которые абсолютно одинаковы, за исключением того, что в каждой из них есть разные данные.

У меня есть веб-приложение, использующее LINQ-To-EF, и пока я не изменил базу данных в строке подключения, все работало нормально. Несмотря на то, что базы данных совпадают, я получаю сообщение об ошибке: «Неверное имя столбца 'tema_id'». Проблема в том, что «tema_id» не существует ни в одной из этих двух баз данных, однако, каким-то образом он существует в файле .edmx. Имя сопоставления должно быть «aktivnost_id», а не «tema_id», как сейчас.

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

Я предоставил скриншот подробностей сопоставления для проблемной таблицы (вы можете увидеть «tema_id», который должен быть «aktivnost_id»).

Я знаю, что мое объяснение может быть немного запутанным, но если понадобится какая-либо дополнительная информация, я предоставлю ее.

Current mappings

Ответы [ 3 ]

2 голосов
/ 04 апреля 2011

Вы пытались редактировать файл .EDMX напрямую, чтобы он соответствовал фактической структуре таблицы?

2 голосов
/ 04 апреля 2011

Попробуйте создать весь слой доступа к данным вручную за пределами Visual Studio с помощью edmgen.exe

, используйте следующую команду для EF4 (настройте параметры в соответствии с именем вашей базы данных, именем пользователя, паролем)

@"%windir%\Microsoft.NET\Framework\v4.0.30319\edmgen.exe" /mode:fullgeneration /c:"Data Source=tcp:127.0.0.1;Initial Catalog=your_database;User ID=sa;Password=your_password;Integrated Security=False;" /project:DataContext /entitycontainer:DataContext /namespace:Project /language:CSharp /pluralize

2 голосов
/ 04 апреля 2011

Мне сложно дать полный ответ без подробных сведений об ошибках, возникающих при попытке обновления;Тем не менее, я бы очень хотел отредактировать EDMX как XML, использовать «find», чтобы найти tema_id, и исправить напрямую.

Если ничего другого, то попробовать быстро:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...