2011-01-13 11 views

Odpowiedz

28

Ustaw 'StoredGeneratedPattern' do Computed przeciwko pola w EDMX.

Nadal potrzebna jest wartość domyślna w SQL Server, jednak powyższe ustawienie zapewni to zaświadczenie EF.

-4

Kliknij prawym przyciskiem myszy edmx, otwórz za pomocą, wybierz edytor xml, znajdź zmianę "ProviderManifestToken" z 2008 na 2005. Zapisz.

2

Opierając RPM1984's answer:

  1. Wybierz pole, które ma wartość domyślną, Created_On w moim przykładzie, w swoim EDMX plik
  2. przejść do właściwości panel
  3. Wybierz StoreGeneratedPattern atrybut
  4. Następnie zmień wartość na Obliczone

EDMX to Properties panel

-2

wartości domyślne ustawienie w Entity Framework 5 i 6, zmieniając T4 Template File

dokonywane poniżej zmian w .tt (plik szablonu) usunąć, jeśli stan na linii 34

34 if (propertiesWithDefaultValues.Any() || collectionNavigationProperties.Any() || complexProperties.Any()) 
35 { 

dodać

59 OnCreated(); 
60 } 
61 
62 partial void OnCreated(); 
63 <# 

przekazać ten obraz http://i.stack.imgur.com/DdlNB.png czerwone i zielone środki usuwają środki dodają

To doda konstruktor we wszystkich klasach Podmiot o sposobie OnCreated.

jak poniżej

public partial class Category 
{ 
    public Category() 
    { 
     this.Products = new HashSet<Product>(); 
     OnCreated(); 
    } 

partial void OnCreated(); 
public int Id { get; set; } 
public string Name { get; set; } 

public virtual ICollection<Product> Products { get; set; } 
} 

Następnie należy utworzyć plik klasy używając tej samej przestrzeni nazw, która z jednostek.

public partial class Category 
{ 
    partial void OnCreated() 
    { 
     Name = "abc" 
    } 
} 

patrz poniżej odpowiedź więcej szczegółów https://stackoverflow.com/a/38882032/5475124

0

kidos do tej odpowiedzi, chociaż nie pracował dla mnie po ustawieniu wartości StoreGeneratedPattern atrybutu do komputerowa ale ustawienie wartości StoreGeneratedPattern do atrybutu Identity pracował dla mnie, ustawiłem domyślny "Guid" na UserID z UNIQUEIDENTIFIER typ

Powiązane problemy