Платформа объекта, обновляя

Я испытываю много затруднений с Платформой Объекта (4.0) из-за шаблона 'добавления' к программе. (Используя ASP.NET MVC)

Проблема состоит в том, что такое чувство, что вся структура Платформы Объекта разработана для 'создания всего внезапно'. Это, кажется, не предоставляет себя прогрессивной разработке из-за всех изменений, которые доводят инструменты до конца. Т.Е. если я иду, изменяют мою базу данных, затем это fubars модели - и пытающийся сделать, обновления вызывают все виды опустошения и хаоса. Это не было бы плохо, если бы все, что я должен был сделать, было переперетаскиванием, все и мои модели работали дословно, но я должен сделать ручные редактирования для точной настройки вещей..., и это становится повторяющимся, и подверженным ошибкам.

Кто-либо знает о каких-либо лучших инструментах или методах для этого вида проблемы?

1
задан Ciel 16 July 2010 в 14:23
поделиться

2 ответа

Хорошо, дубль два. Похоже, что вместо использования дизайнера вам лучше пойти по пути кода и использовать аннотации данных.

Аннотации к данным: http://blogs.msdn.com/b/efdesign/archive/2010/03/30/data-annotations-in-the-entity-framework-and-code-first.aspx - Ознакомьтесь с атрибутом storeNameAttribute для конкретного случая, который вы упомянули в комментарии к моему удаленному ответу

. Хорошая запись кода здесь: http://weblogs.asp.net/scottgu/archive/2010/07/16/code-first-development-with-entity-framework-4.aspx

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

2
ответ дан 2 September 2019 в 23:01
поделиться

Что вы делали раньше? Вы рефакторили базу данных и НЕ пришлось менять код?

До сих пор я использовал все, от ADO.NET до 3 .NET ORMs (Nhibernate, Linq2Sql и Entity Framework), баловался Django и Python, а сейчас увлеченно работаю с Ruby on Rails. Ни один из этих инструментов не решил полностью проблему несоответствия импеданса между базой данных и кодом.

Где-то этот код должен существовать:

DBCOLUMN => CODE //or
myModel.Property = rdr["something"]  //or
<Property Name="EndDate" Type="datetime" /> //or
Id(x => x.Id);

Неважно, где он находится - в Rails View, файле Migration, конструкторе Linq2Sql или файле Fluent Nhibernate. Это всегда будет проблемой.

Мое предложение - постараться сделать несоответствие как можно меньше. Не переименовывайте плохо названные колонки в дизайнере и сделайте все возможное, чтобы соглашения между вашей базой данных и кодом были одинаковыми.

Другой ответивший предоставил инструменты, которые просто меняют места переименований, но в реальности вам всегда придется проделывать подобную работу.

0
ответ дан 2 September 2019 в 23:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: