【发布时间】:2013-10-09 16:20:04
【问题描述】:
我正在使用 ServiceStack ORMLite 来尝试更新我的数据库中的记录。我所有的 POCO 都实现了一个 IHasID 接口
public interface IHasId
{
int Id { get; set; }
}
在我的 POCO 中,我有以下属性
private int id;
[ServiceStack.DataAnnotations.Alias("TableName_ID")]
public int Id
{
get { return id; }
set
{
if (value != this.id)
{
this.id = value;
NotifyPropertyChanged("Id");
}
}
}
我的每个存储库类都从具有以下方法的 DataRepositoryBase
public virtual T Update(T entity)
{
using (IDbConnection db = CreateDbConnection())
{
db.Update<T>(entity, e => e.Id == entity.Id);
return entity;
}
}
当我在子存储库上调用此方法时,我收到以下错误:
System.Data.SqlClient.SqlException (0x80131904):无法更新标识列“TableName_ID”。
我该如何解决这个错误?
我做错了什么?
谢谢!
杰里米
【问题讨论】:
标签: c# servicestack ormlite-servicestack