2013-08-16 1 views
0

Сегодня я немного поиграл с LightSwitch в VisualStudio 2012. У меня есть следующая проблема:Написание HTML-клиента LightSwitch, как предотвратить проверку первичного ключа?

У меня есть база данных, созданная EntityFramework (сначала код) с GUID в качестве первичного ключа на каждой таблице.

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

Теперь при создании нового элемента с LightSwitch, конечно, я хочу скрыть первичный ключ от пользователя, так как он создается базой данных. К сожалению, gui продолжает проверять поле, даже если я удалю его с экрана. Я не могу сохранить новый элемент, потому что проверка требует, чтобы я ввел значение для поля первичного ключа.

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

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

ответ

1

Я нашел созданный код фактически не запускается до тех пор, пока вы не попытаетесь и сначала не вставьте объект (которого он никогда не достигнет из-за ошибки проверки)

Решение, которое я нашел (что не является идеальным), заключается в заполнении идентификатора с помощью javascript («00000000-0000-0000-0000-000000000000»)], а затем переписать его в entity_inserting (..)

Это не идеальный вариант, так как clien t будет запутан, так как идентификатор на сервере отличается от ID.

Предположительно, необходимо создать идентификаторы в базе данных, но мне не повезло с этим.

+0

не могли бы вы предоставить исходный код для этого? У меня такая же проблема, и мне трудно найти этот метод entity_Inserting –

1

Другое решение, которое было немного лучше, - это настроить контроллер, который обслуживает GUID, а затем извлекать эти концы клиентов.

Это позволит клиенту иметь возможность ссылаться на объект без обновления страницы.

Если вам нужен код для этого, просто комментарий или надпись или что-то еще.