我正在使用SQL Server使用实体框架为数据层开发ASP.NET Web API。当我尝试从数据库中获取数据时,我的请求在dataContext停止,返回以下异常。我已经验证了UserRoles
表是在数据库中创建的。数据库设置是本地的。
System.Data.Entity.Core.EntityCommandExecutionException:'执行命令定义时发生错误。有关详细信息,请参阅内部异常。'
内部异常SqlException:无效的对象名称' dbo.UserRoles'。
答案 0 :(得分:0)
在文本编辑器中打开edmx文件。如果您看到文件中的表但未在设计器中看到,请尝试清除所有EntitySet节点和EntityType节点,保存文件,然后返回Visual Studio并再次尝试从数据库更新模型。或者在您做任何事情之前,请转到您的模型并尝试右键单击它 - >从数据库更新模型。因为你的表可能是在SQL上创建的,但是你的模型中还没有它。
<edmx:StorageModels>
<Schema Namespace="myModel.Store">
<EntityContainer Name="MyModelStoreContainer">
delete-> <EntitySet Name="Table1" ... />
delete-> <EntitySet Name="Table2" ... />
</EntityContainer>
delete-> <EntityType Name="Table1">...</EntityType>
delete-> <EntityType Name="Table2">...</EntityType>
</Schema></edmx:StorageModels>