为了在C#中填充数据库,我使用VS2008连接到SQL server数据库。运行得很顺利,我能够成功地查询、插入和更新数据库中的所有表,只有一个表除外。每当我尝试查询或插入到一个表中时,我都会得到以下错误:
Message = "Invalid object name 'DB_NewModelStoreContainer.DATATYPE'."
生成此错误的查询为:
var test3 = (from o in context.DATATYPE
where o.DATETYPE_NAME == "Single"
select o).First();
(yes I know it should be DATATYPE, but that is not the problem =) )
每当我将数据库添加到我的项目中时,由于某种原因,它会将DATATYPE表中的每个属性标记为主键。我进入了.edmx的xml并修复了这个问题,但是我仍然得到这个错误,并且我找不到><的原因。任何帮助都将不胜感激!提前谢谢。
发布于 2011-03-18 18:21:04
为了使用EntityFramework,应该清楚地提到PrimaryKey和外键(如果存在)。
如果您没有任何主键,请将唯一列作为主键,它肯定可以工作。我想知道你怎么能插入没有主键的记录?
在edmx设计器中,您可能遗漏了一些东西,或者可能是在changes.so之后某些映射搞砸了,请修改数据库中的表,为每个表指定主键,然后尝试从头开始生成edmx。
https://stackoverflow.com/questions/3890949
复制