У меня есть очень простой класс С#, который содержит один первичный ключ. Я использую EF 6 с первым кодом, и у меня есть два вопроса:
Как мне сделать первичный ключ как
Identity
в первом коде (и как не сделать его идентификатором)? Некоторым из моих классов требуется, чтобы PK был идентификатором (автоматическое увеличение при добавлении), а некоторым нужно, чтобы он назначался кодом.- #P3#
#P4# <цитата> #P5# #P6# цитата>// This code is actually wrapped by a BusinessContext Class to encapsulate the ORM representation context.Costumers.Add(costumer); //exception is here! context.SaveChanges();
а это сам класс:
using Microsoft.Practices.Prism.Mvvm;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyApp.Models
{
public class Costumer : BindableBase
{
private string name;
private string city;
private Estado state;
private int costumerId;
[Required]
[StringLength(500)]
public string Name
{
get { return this.name; }
set { SetProperty(ref name, value); }
}
[Required]
[StringLength(500)]
public string City
{
get { return this.city; }
set { SetProperty(ref city, value); }
}
[Required]
public State State
{
get { return this.state; }
set { SetProperty(ref state, value); }
}
[Required]
[Key]
public int CostumerId
{
get { return this.costumerId; }
}
}
}
У класса есть [Key]
, так почему же существует исключение, говорящее, что ключа нет?
Key
не может иметь приватный сеттер. - person Claies   schedule 12.03.2015