LINQ к SQL Основные броски вставки: Присоедините или Добавьте не новое связанное с объектом исключение

Поло. Я бы не использовал Bundles в MVC по нескольким причинам. Это не работает в вашем случае, потому что вы должны настроить собственный класс BundleConfig в вашей папке Apps_Start. Это не имеет смысла, когда вы можете просто добавить стиль в заголовок вашего html, например так:

<link rel="stylesheet" href="~/Content/bootstrap.css" />
<link rel="stylesheet" href="~/Content/bootstrap.theme.css" />

Вы также можете добавить их в класс Layout.cshtml или частичный класс, который вызывается из всех ваших представлений и удаляется на каждую страницу. Если ваши стили меняются, вы можете легко изменить имя и путь без перекомпиляции.

Добавление жестко закодированных ссылок на CSS в класс нарушает целиком отделение интерфейса и дизайна от модели приложения. Вам также не нужны жестко заданные пути таблиц стилей, управляемые в c #, потому что вы больше не можете создавать «скины» или отдельные модели стилей, например, для различных устройств, тем и т. Д., Например:

<link rel="stylesheet" href="~/UI/Skins/skin1/base.css" />
<link rel="stylesheet" href="~/UI/Skins/skin2/base.css" />

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

Целью CSS 15 лет назад была разработка как «скинов» для сайтов, управляемых пользователями, так и приложений, чтобы вы могли отключить внешний вид интерфейса от приложения и переназначить контент независимо от структура данных ..... например, версия для печати, мобильная версия, аудио версия, сырой XML и т. д.

Вернувшись теперь к этой «старомодной», жестко запрограммированной системе путей, использующей классы C #, жесткие стили, такие как Bootstrap, и объединяя темы сайтов с кодом приложения, мы снова вернулись к тому, как создавались веб-сайты. 1998.

12
задан Patrick D'Souza 28 April 2013 в 18:17
поделиться

2 ответа

Если это единственные ненулевые столбцы, где первичный ключ? LINQ to SQL требует первичного ключа для вставки данных. Если вы используете AssessmentCentreId отдельно или вместе с AttemptNumber в качестве составного, уверены ли вы, что не пытаетесь вставить повторяющийся ключ?

0
ответ дан 2 December 2019 в 22:05
поделиться

Меня это тоже беспокоило. Я немного поискал и обнаружил много путаницы и некоторые небрежные обходные пути в отношении отдельных объектов. Затем я нашел хорошее решение на codeplex, которое решило непосредственную проблему и значительно расширило функциональность linq2sql. Это небольшой класс, который очень легко реализовать и формирует EntityBase для dbml ваших проектов.

Вот официальное описание и ссылка. LINQ to SQL Entity Base - это простой базовый класс, который в первую очередь предназначен для поддержки LINQ to SQL в автономном режиме, что является одним из недостатков технологии LINQ to SQL в настоящее время. Это очень полезно в многоуровневой, распределенной среде или среде ASP.NET, где отключенная функциональность является релевантной.

http://linq2sqleb.codeplex.com/

Надеюсь, это поможет любому, у кого есть подобное.

Джером Вернон

7
ответ дан 2 December 2019 в 22:05
поделиться
Другие вопросы по тегам:

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