Генерираните от Linq-To-Sql класове не приемат Constriants на стойността по подразбиране.
Може би в бъдеще, но проблемът е, че ограниченията не винаги са прости стойности, те могат да бъдат и скаларни функции като GetDate()
, така че linq по някакъв начин ще трябва да знае как да ги преведе. Накратко, дори не се опитва. Освен това е много специфичен за базата данни тип нещо.
- Можете да напишете генератор на код за създаване на частични класове на обекти, където можете да извлечете constriant на стойността по подразбиране.
- Алтернативно кодът на вашия бизнес слой може да зададе настройките по подразбиране в конструктори от xml файл и всичко, което трябва да направите, е да поддържате xml файла актуален.
- Вместо да вършите работата в конструктори, можете да емулирате sql и да добавите стойности по подразбиране, като проверите ChangeSet, преди да изпратите промени в базата данни.
Проблемът, който имате, е описан подробно в CodeProject - Задаване на стойности по подразбиране за LINQ свързани данни