我第一次使用 ServiceStack ORMLite,从我的 DataRepositoryBase<T> 基类执行以下命令时出现错误“无效的列名 'EntityId'”:
public virtual T Get(int id)
{
using (IDbConnection db = CreateDbConnection())
{
return db.Where<T>(e => e.EntityId == id).SingleOrDefault(); //ERROR HERE
}
}
我所有的类都实现了以下接口:
public interface IIdentifiableEntity
{
int EntityId { get; set; }
}
在我的课堂上,我具有以下属性:
[XmlIgnore]
[ServiceStack.DataAnnotations.Ignore]
public int EntityId
{
get
{
return this.myPrimaryKey;
}
set
{
this.myPrimaryKey = value;
}
}
EntityId 属性不是数据库中的实际字段,但我使用它以便始终可以通过调用 EntityId 来引用我的任何类的主键。
是什么导致了这个错误,我该如何解决?
谢谢!