初探EntityFramework——空Code First模型
如果不是從現有的系統升級,想要創建全新的項目可以從“空Code First模型開始”。“空CodeFirst模型”要先創建類,Visual Studio會從項目第一次執行的時候根據連接自動創建需要的數據庫結構。本文將簡單示例說明如何使用“空CodeFirst模型”。
?
新建控制臺應用程序,名叫CodeFirstE,如下圖所示?:
?
?
右鍵點擊項目,選擇“添加”,然后是“新建項”,如下圖所示:
? ? ? ? ? ? ? ?
?
?
在彈出的界面中選擇“ADO.NET”實體數據模型,并取名為“KTStoreModel”,如下圖所示:
?
單擊“添加”后,選擇“空Code First模型”,如下圖所示:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ???
?
點擊“完成”后,由于是空的模型,因此除了構造函數中的連接信息外沒有其他的內容,切換到“App.config”,可以看到默認創建的連接字符串:
修改連接字符串為本地指定地址,如下圖所示:
<connectionStrings> <add name="KTStoreModel" connectionString="data source=127.0.0.1;initial catalog=KTStore;persist security info=True;user id=sa;password=123;MultipleActiveResultSets=True;App=EntityFramework" providerName="System.Data.SqlClient" /> </connectionStrings>?
在項目中新建Product.cs文件,代碼如下圖所示:
namespace CodeFirstE {public class Product{public int Id { get; set; }public string Name { get; set; }public string Category { get; set; }public int Price { get; set; }} }在自動的KTStoreModel.cs文件中增阿基如下代碼:
public virtual DbSet<Product> Product { get; set; }?
由于空的CodeFirst項目在第一次運行時會自動生成數據庫和表結構,必須確保第一次運行時數據庫中沒有響應的數據庫和表結構,不然會報錯。在Program.cs中增加如下代碼:
class Program{static void Main(string[] args){KTStoreModel model = new KTStoreModel();string sql = model.Product.ToString();Console.WriteLine("商品項目數:{0}", model.Product.Count());foreach (Product p in model.Product){int id = p.Id;string category = p.Category;int price = p.Price;string name = p.Name;Console.WriteLine("{0}\t{1}\t{2}\t{3}", id, category, price, name);}Console.ReadKey();}}運行程序,EF框架會在Sqlserver中會自動生KTStore數據庫,并生成Product表,如下圖所示:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?
由于表中沒有數據,所以無法展示任何結果。將展示數據復制到表中,再次運行如下圖所示:
? ? ? ? ??
?
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的初探EntityFramework——空Code First模型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 哈工大C语言公开课练兵编程(二)
- 下一篇: C#中利用Expression表达式树进