[英]Error executing query: Telerik.OpenAccess.RT.sql.SQLException: Invalid object name 'Employee'
我在asp.net C#Web应用程序中使用Telerik Open Access ORM。 在我的应用程序中,我已将名为“ Person”的数据库中的表实体映射为基类,并创建了名为“ Employee”的子域类。 然后,我已将垂直继承的子类应用于基类,并将“默认映射”用于Employee子类。
同时查询基类/子类时,出现错误:
执行查询时出错:Telerik.OpenAccess.RT.sql.SQLException:对象名称'Employee'无效。
这些是从上下文中添加到查询中的行:
using (EntitiesModel1 obj = new EntitiesModel1())
{
List<Employee> lstEmp = obj.Employees.ToList();
GridView1.DataSource = lstEmp;
GridView1.DataBind();
}
请帮忙。
当您将继承策略指定为“垂直”时,这意味着每个类都有其自己的物理表。 因此,您会收到“员工”表丢失的错误。
如果要将Person和Employee的实例存储在单个表“ Person”中,则需要使用默认的继承策略,即“ Flat”。
如果要创建其他“雇员”表,则可以使用Schema Handler API,并让OpenAccess生成适当的ddl。
var context = new EntityDiagram();
var schemaHandler = context.GetSchemaHandler();
var ddl = schemaHandler.CreateUpdateDDLScript(null);
if(string.IsNullOrEmpty(ddl) == false)
schemaHandler.ExecuteDDLScript(ddl);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.