例外:
异常详细信息:System.InvalidCastException:The EntityParameterCollection仅接受非null EntityParameter类型 对象,而不是EntityParameter类型的对象。
代码:
using (var db = new Entities())
{
var cmd = db.Connection.CreateCommand();
cmd.CommandText = "SELECT TOP 1 LanguageString FROM Language AS L WHERE L.ID = @pLanguageID";
var pli = new EntityParameter("pLanguageID", DbType.AnsiStringFixedLength);
pli.Size = 3;
pli.Value = languageID;
cmd.Parameters.Add(pli); // exception here
}
堆栈顶部跟踪:
[InvalidCastException:EntityParameterCollection只接受 非null EntityParameter类型对象,而不是类型的对象 EntityParameter]
System.Data.EntityClient.EntityParameterCollection.ValidateType(对象 价值)+8069508
System.Data.EntityClient.EntityParameterCollection.Add(Object value) 23
表格信息:
CREATE TABLE [dbo].[Language](
[ID] [varchar](3) NULL,
[LanguageString] [varchar](23) NULL
) ON [PRIMARY]
其他信息:
我尝试了更一般的EntityParameter
定义,但同样的问题也出现了。我只对数据库具有只读权限。
我做错了什么?
答案 0 :(得分:0)
呃,我导入了错误的EntityParameter
。
要导入的正确名称空间似乎是System.Data.EntityClient
。