代码如下
using (AutoLotEntities context=new AutoLotEntities())
{
EntityKey key = new EntityKey("AutoLotEntities.Cars", "CarID", 1);
context.GetObjectByKey(key);//这句话报错,提示没有这个方法
}
书上是这么写的,检查其他地方也没有错误的地方,只是这里存在错误
你这个是在哪里找的啊,不是这么用的吧。
这样查询
///
/// 查询模板对应数据(升序排列模板中的数据)
///
///
///
///
public static List GetSaveListData(string TemplateName)
{
using (PulseContext pc = new PulseContext())
{
var query = from b in pc.SaveListData
where b.TemplateName == TemplateName
orderby b.WindowPosition
select b;
return query.ToList();
}
}
//static string filename = System.Configuration.ConfigurationManager.ConnectionStrings["PulseSQLite"].ToString();//获取连接数据库名称
public PulseContext()
: base(new SQLiteConnection()
{
ConnectionString =
new SQLiteConnectionStringBuilder()
{ DataSource = "PulseSQLite.db", ForeignKeys = true }
.ConnectionString
}, true)
{ }
/// <summary>
/// 生成数据库用
/// </summary>
/// <param name="modelBuilder"></param>
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
if (!File.Exists("PulseSQLite.db"))//判断数据是否存在
{
//此处必须配置 PluralizingTableNameConvention ,否则无法正常使用。
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
modelBuilder.Configurations.AddFromAssembly(typeof(PulseContext).Assembly);
//只有在Debug时可以自动生成数据库
Database.SetInitializer(new DbInitializer(Database.Connection.ConnectionString, modelBuilder));
}
}
/// <summary>
///模板存储
/// </summary>
public DbSet<SaveListData> SaveListData { get; set; }
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
namespace Atisafe.Modes
{
///
/// 模板保存入数据库中
///
[Table("SaveListData")]
public class SaveListData
{
[Key]
///
/// id
///
public int ID { get; set; }
///
/// 模板名称
///
public string TemplateName { get; set; }
///
/// 模板类型(压力、脉象)
///
public int Type { get; set; }
///
/// 列表节点名称
///
public string Name { get; set; }
///
/// 窗体大小
///
public string WindowSize { get; set; }
///
/// 窗体在容器内位置
///
public int WindowPosition { get; set; }
}
}
通过实体类生成的表,还有表名,key,不是在你那里生成的