我是實體框架的新手,但試圖讓我的手進入它。在通過許多博客之後,我開始着手在我的項目中實施它,但我遇到以下問題。實體框架2012中的LINQ表達式中沒有顯示類型信息
我有VS 2012和工作的4.0版本的項目。
我在我的項目,創建4個文件 DataModel.Context.tt , DataModel.Designer.cs , DataModel.edmx.diagram , DataModel.tt
看起來不錯,直到此時加入DataModel.edmx
文件。但是當我嘗試訪問我的Linq查詢中的表信息時。智能感知不顯示任何東西。
var context = new DataModelEntities();
var invoice = from c in context.Invoice select c.{//NOTHING SHOWING HERE};
DataModelEntities類(DataModel.Context.cs)看起來像
namespace MySpace.Objects.DataModel
{
using System;
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
public partial class DataModelEntities : DbContext
{
public DataModelEntities()
: base("name=KKEntities")
{
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
throw new UnintentionalCodeFirstException();
}
public DbSet<Invoice> Invoice { get; set; }
public DbSet<InvoiceContracts> InvoiceContracts { get; set; }
}
}
發票類的樣子:
//-----------
// <auto-generated>
// This code was generated from a template.
//
// Manual changes to this file may cause unexpected behavior in your application.
// Manual changes to this file will be overwritten if the code is regenerated.
// </auto-generated>
//--------
namespace MySpace.Objects.DataModel
{
using System;
using System.Collections.Generic;
public partial class Invoice
{
public int ID { get; set; }
public int POID { get; set; }
}
}
請讓我知道如果我錯過什麼。
謝謝...
你能告訴我們發票類的代碼嗎? –
當然......這只是一個POCO生成的,它位於DataModel.tt中 // ----------- // <自動生成的> //此代碼是從模板。 // //手動更改此文件可能會導致應用程序出現意外的行爲。 //如果重新生成代碼,手動更改此文件將被覆蓋。 // auto-generated> // -------- namespace MySpace.Objects.DataModel { using System; 使用System.Collections。通用; public partial class發票 { public int ID {get;組; } public int POID {get;組; } } } } – Krishna
請確保你有'使用System.Linq;'行 – Andrei