Итак, я понимаю, что CE не поддерживает генерируемые сервером значения - это нормально, я предоставляю свой собственный код ...
public static class ExtensionMethods
{
public static TResult NextId<TSource, TResult>(this ObjectSet<TSource> table, Expression<Func<TSource, TResult>> selector)
where TSource : class
{
TResult lastId = table.Any() ? table.Max(selector) : default(TResult);
if (lastId is int)
lastId = (TResult)(object)(((int)(object)lastId) + 1);
return lastId;
}
}
private void AddProperty()
{
Property p = new Property();
entities.AddToProperties(new Property()
{
ID = entities.Properties.NextId(u => u.ID),
AgentName = "Agent Name",
Address = "New Property",
AuctioneerName = "Auctioneer Name",
SaleTitle = "Sales Title",
DateOfAuction = null,
ReservePrice = null,
CurrentBid = null,
PreviousBid = null,
});
entities.SaveChanges();
BindData();
}
Единственная проблема заключается в том, что это не исправляетпроблема, когда я думаю, что это должно.У меня есть 2 таблицы.Один называется «Свойство», другой - «Имидж».Идентификатор обоих устанавливается на первичный ключ, уникальный да и идентичность на ложь.Я не вижу, что я делаю неправильно, чтобы получить эту ошибку, все остальные поля имеют значение nullable, но я не думаю, что это как-то связано с этой ошибкой ...