基於工作專案常偏向RAD性質,對我來說,LINQ to Oracle的輕巧優於EF的龐大嚴謹功能完整。而LINQ to Oracle雖然也找得到免費解決方案,但畢竟要用在工作上,產品有廠商支援撐場,總是比Open Source多幾分穩當,何苦為了幫公司省錢砸了飯碗。
2.在Solution Explorer裡點兩下lqml檔案,並不會在Visual Studio裡開出編輯畫面,而是另外啟動Entity Developer for dotConnect。雖然沒有內嵌在VS2008 IDE內,但它仿效LINQ to SQL dbml的視覺化操作,透過拖拉就可對應資料表Schema建立Class。
如下圖,先 (1) 建立與Oracle DB的連線 (2) 選取資料表,拖拉到設計區,接著就出現跟LINQ to SQL一樣的設計畫面 (3) 記得要改一下Context Namespace,預設會跟lqml同名,而二者名稱相同容易混淆 (4) 不要忘記按一下儲存,設計結果才會回寫到VS2008專案裡。
class Program
{
static void Main(string[] args)
{
HRDataContext db = new HRDataContext();
Player p = new Player()
{
Playerid = "Darkthread",
Name = "黑暗執行緒",
Email = "admin@darkthread.net"
};
db.Players.InsertOnSubmit(p);
db.SubmitChanges();
Console.WriteLine("Done!");
}
}