เฉพาะผู้ที่เขียนแบบสอบถามในรหัสหน้า...
สวัสดีทุกคน!
มีข้อมูลบางอย่างเกี่ยวกับ Habré ว่า VisualStudio 2008 รุ่นถัดไปจะมี ADO.NET EntityFramework (ฉันจะบอกความลับให้คุณฟังว่าเวอร์ชันนี้ปรากฏขึ้นแล้ว) การพัฒนานี้เป็นเฟรมเวิร์กสากลที่ช่วยให้คุณสร้างตรรกะข้อมูลสำหรับโครงการของคุณด้วยการคลิกเมาส์ไม่กี่ครั้ง
จนถึงตอนนี้ ในการทำงานกับ data logic ฉันเจอโครงการ 2 ประเภท อันแรกถูกสร้างขึ้นบนเฟรมเวิร์กของ NHibernate ที่มีชื่อเสียง ส่วนอันอื่น ๆ นั้นถูกนำไปใช้โดยโปรแกรมเมอร์ ฉันได้เขียนและพัฒนาระบบต่างๆ มาเป็นเวลา 3 ปีแล้ว และตลอดเวลานี้ฉันได้พัฒนาตรรกะในการทำงานกับแฮนเดิลเหล่านี้โดยเฉพาะ
วันก่อนหลังจากที่ฉันติดตั้ง Windows ใหม่ ฉันดาวน์โหลด VisualStudio WebDeveloper Express และดีใจที่พบ ADO.NET EntityFramework ในแพ็คเกจ หลังจากนั้นไม่นาน ฉันก็จดทะเบียนโดเมน สร้างเว็บไซต์ง่ายๆ และเริ่มฝึกความแข็งแกร่งในการเขียนโปรแกรมสำหรับเฟรมเวิร์กนี้
ก่อนอื่นคุณต้องสร้างโครงการเว็บอย่างง่ายด้วยฐานข้อมูล นอกจากนี้ยังเป็นการดีที่จะเชื่อมต่อกับฐานข้อมูลทันทีผ่าน DataBase Explorer มันจะสะดวกขึ้นในภายหลัง
หลังจากนั้น จะต้องเพิ่มองค์ประกอบใหม่ "ADO.NET Entity Data Model" ในโครงการ
ระบบจะต้องระบุสตริงสำหรับการเชื่อมต่อกับฐานข้อมูล รวมทั้งระบุว่าโมเดล ADO.NET EF แรกจะมาจากไหน
ในฐานข้อมูลของฉัน ฉันมีตารางโพสต์และตารางผู้ใช้ที่เรียบง่ายอยู่แล้วสองตาราง ดังนั้นฉันจึงบังคับให้ระบบสร้างโมเดลตามฐานข้อมูลของฉันโดยไม่ต้องกังวลใจอีกต่อไป หลังจากสิ่งเหล่านี้มาก การกระทำที่เรียบง่ายฉันได้โมเดล db ที่ใช้งานได้ นอกจากนี้ เมื่อศึกษาแบบจำลองนี้ด้วยสายตาแล้ว ฉันไม่ลืมที่จะดูโค้ดและดูว่าเฟรมเวิร์กอธิบายคลาสทั้งหมดของฉันอย่างไร
- เนมสเปซ DataBaseCore
- ///
- /// ไม่มีความคิดเห็นสำหรับ DbModel ในสคีมา
- ///
- คลาสสาธารณะบางส่วน DbModel: global::System.Data.Objects.ObjectContext
- ///
- /// เริ่มต้นวัตถุ DbModel ใหม่โดยใช้สตริงการเชื่อมต่อที่พบในส่วน "DbModel" ของไฟล์การกำหนดค่าแอปพลิเคชัน
- ///
- DbModel สาธารณะ () :
- ฐาน("ชื่อ=DbModel" , "DbModel" )
- นี้ .OnContextCreated();
- /* ตัดแต่งโดยไม่จำเป็น */
- โพสต์คลาสบางส่วนสาธารณะ: global::System.Data.Objects.DataClasses.EntityObject
- ///
- /// สร้างวัตถุโพสต์ใหม่
- ///
- /// ค่าเริ่มต้นของรหัส
- โพสต์คงที่สาธารณะ CreatePost (int id)
- โพสต์โพสต์ = โพสต์ใหม่ ();
- post.Id = รหัส;
- โพสต์กลับ;
สายตาที่ได้รับการฝึกฝนมาของผู้เชี่ยวชาญด้านตรรกะข้อมูลแสดงให้เห็นว่ามีคลาสที่ค่อนข้างเรียบง่ายและสง่างามที่อนุญาตให้ทำงานทั้งกับโพสต์ในระบบและกับผู้ใช้
เรามีรหัสอยู่แล้วมันยังคงเป็นเพียงการเริ่มใช้งาน และที่นี่ เสน่ห์และความเป็นไปได้ทั้งหมดของ ASP.NET ถูกเปิดเผยให้เราเห็น ในบรรดาแหล่งข้อมูลจำนวนมากในหน้านี้ ฉันเห็นแหล่งข้อมูลเอนทิตี ซึ่งให้ข้อมูลตามคำขอจากชั้นเรียนของเราอย่างมีความสุข เราลากลงบนแบบฟอร์ม เปิดวิซาร์ดการตั้งค่า และแนบแหล่งข้อมูลเข้ากับตารางโพสต์ของเราอย่างรวดเร็ว
คำอธิบายของ datasort ในรหัส ASPX นั้นน่าพึงพอใจมากขึ้นอย่างไม่ต้องสงสัย
* ซอร์สโค้ดนี้ถูกไฮไลต์ด้วยเครื่องมือเน้นซอร์สโค้ด
- < asp:EntityDataSource ID ="dsPosts" runat ="server" ConnectionString ="name=DbModel"
- DefaultContainerName ="DbModel" EntitySetName ="โพสต์">
- asp:EntityDataSource >
อาจกล่าวได้ว่า - มันเปล่งประกายด้วยความสง่างาม
หลังจากที่ผู้ให้บริการข้อมูลปรากฏบนฟอร์มแล้ว ผู้บริโภคก็จำเป็นเช่นกัน ฉันได้เพิ่มรหัสง่ายๆ ที่แสดงโพสต์ทั้งหมดตามลำดับโดยไม่ฉลาด
* ซอร์สโค้ดนี้ถูกไฮไลต์ด้วยเครื่องมือเน้นซอร์สโค้ด
- < asp:Repeater runat ="server" ID ="repPosts" DataSourceID ="dsPosts" >
- < HeaderTemplate >
- HeaderTemplate >
- < ItemTemplate >
- < div >
- < h3 >
- < asp:Label ID ="lblHeader" runat ="server" Text ="<%# Eval("Header") %>" > asp:Label >
- h3 >
- < p >
- < asp:Label ID ="lblText" runat ="server" Text ="<%# Helpers.TypographText(Eval("Text").ToString()) %>" > asp:Label >
- p >
- div >
- ItemTemplate >
- asp:Repeater >
และนี่คือส่วนที่ง่ายที่สุดของเรื่องราวของฉัน จนถึงตอนนี้ทุกอย่างที่ทำไปแล้วสามารถทำซ้ำได้ด้วยเมาส์ มันง่ายพอ เราเพิ่งสร้างมุมมองเชิงวัตถุของฐานข้อมูล และการใช้มุมมองนี้ เราเริ่มแสดงข้อมูลจากฐานข้อมูลบนเพจ ในเวลาเดียวกัน เราไม่เคยเขียนคำขอเดียว ไม่ได้รับข้อมูลจากฐานข้อมูลโดยตรง ฯลฯ ...
แต่จะแสดงอะไรให้ผู้ใช้ทราบหากเราไม่มีอะไรในฐานข้อมูล ไม่ดี. คุณต้องเขียนแบบฟอร์มเพื่อกรอกฐานข้อมูล ตอนนี้เราจะเลิกเขียนโปรแกรมด้วยเมาส์และเริ่มเขียนโค้ด
ฉันได้ดำเนินการพื้นฐานที่สุดสองอย่างสำหรับการทำงานกับโพสต์ในระบบ - นี่คือการเพิ่มและการลบ การแก้ไขด้วยการเปรียบเทียบกับรหัสนี้จะไม่ใช่เรื่องยากสำหรับทุกคน
* ซอร์สโค้ดนี้ถูกไฮไลต์ด้วยเครื่องมือเน้นซอร์สโค้ด
- เนมสเปซ DBW
- โพสต์ในชั้นเรียนสาธารณะ
- โพสต์สาธารณะ()
- โมฆะคงที่สาธารณะ ใหม่ (String PostText, String PostHeader, Int32 UserId)
- p.Header = ส่วนหัวของโพสต์;
- p.Text = Helpers.TypographText (ข้อความโพสต์);
- p.PublishDate = DateTime.Now;
- p.User = (จาก usr ใน m.User โดยที่ usr.Id == UserId เลือก usr).First();
- m.AddToPost(หน้า);
- m.SaveChanges();
- โมฆะสาธารณะคงลบ (Int32 PostId)
- DataBaseCore.DbModel m = ใหม่ DataBaseCore.DbModel();
- DataBaseCore.Post p = ใหม่ DataBaseCore.Post();
- p = (จาก pst ใน m.Post โดยที่ pst.Id == PostId เลือก pst).First();
- m.DeleteObject(พี);
- m.SaveChanges();
ดูเหมือนว่าทุกอย่างจะง่ายและใช่แล้ว แต่มีความแตกต่างเล็กน้อย
อย่างแรกคือ LINQ หากไม่มี ADO.NET ก็ไม่มีที่ไหนเลย ดังนั้นคุณไม่ควรหลบเลี่ยงและให้คะแนนกับ SQL หรือ LINQ โดยทั่วไป คุณยังคงต้องเขียนแบบสอบถาม
ประการที่สอง โค้ดนี้ถูกสร้างขึ้นโดยอัตโนมัติโดยเฟรมเวิร์ก ดังนั้นคุณจึงไม่ต้องคาดหวังความสะดวกสบายมากนักในบางจุด และคุณควรพร้อมเสมอที่จะเปลี่ยนโค้ดที่สตูดิโอสร้างไว้แล้ว ตัวอย่างเช่น ในบรรทัดที่ 16 จะสะดวกกว่าหากไม่ใช้วัตถุประเภทผู้ใช้ซึ่งฉันต้องเลือกจากฐานข้อมูล แต่ให้ส่งค่าของตัวระบุผู้ใช้ทันที มันจะสะดวกกว่าสำหรับรหัสนี้ แต่ไม่เป็นสากล ดังนั้นโค้ดจำเป็นต้องได้รับการปรับปรุงและคิดใหม่ บางทีคุณอาจไม่ต้องผ่าน ID ผู้ใช้ แต่เป็นวัตถุประเภทผู้ใช้
อะไรต่อไป? นอกจากนี้ ฉันจะเขียนโครงการต่อไป โดยเจาะลึกเข้าไปในส่วนเสริมของ ADO.NET Entity Framework และฉันยินดีที่จะแบ่งปันงานวิจัยของฉันกับคุณ ผู้ใช้ที่คลั่งไคล้ ดังนั้นจะมีบทความใหม่ที่มีข้อมูลเชิงลึกและจริงจังมากขึ้น
ยูพีดี หัวข้อกว้างมาก ไม่มีการเปิดเผยความเป็นไปได้แม้แต่เปอร์เซ็นต์ที่นี่ แต่ความต่อเนื่องจะเป็น 8-)
เทคโนโลยี ADO.สุทธิ, . เน็ตเฟรมเวิร์ค,คอร์บา
เทคโนโลยีการเข้าถึงฐานข้อมูลระยะไกล ADO .NET ได้รับการพัฒนาสำหรับสถาปัตยกรรมไคลเอ็นต์เซิร์ฟเวอร์ นอกเหนือจากฐานข้อมูลระยะไกลสองระดับ - ไคลเอนต์และเซิร์ฟเวอร์ - ระดับเพิ่มเติมปรากฏขึ้น - เซิร์ฟเวอร์ลอจิกธุรกิจที่ใช้ตรรกะทางธุรกิจของแอปพลิเคชัน
เทคโนโลยี ADO .NET สร้างโครงร่างต่อไปนี้เพื่อให้ไคลเอนต์ทำงานกับเซิร์ฟเวอร์ฐานข้อมูล:
สร้างการเชื่อมต่อกับเซิร์ฟเวอร์
การรับข้อมูลที่จำเป็น
ปิดการเชื่อมต่อ
การประมวลผลข้อมูล
สร้างการเชื่อมต่อเพื่อถ่ายโอนข้อมูลที่เปลี่ยนแปลงกลับไปยังเซิร์ฟเวอร์
ADO .NET ขึ้นอยู่กับสองโมดูลหลัก:
ผู้ให้บริการข้อมูล .NET FrameWork
ฐานข้อมูลเชิงสัมพันธ์ที่อยู่อาศัย (ชุดข้อมูล)
ผู้ให้บริการข้อมูลตามชื่อที่แนะนำ มีหน้าที่รับผิดชอบในการสื่อสารแอปพลิเคชันกับแหล่งข้อมูลและจัดการข้อมูล ผู้ให้บริการข้อมูลรวมถึงวัตถุการจัดการข้อมูลต่อไปนี้:
ก) การเชื่อมต่อใช้เพื่อสร้างการเชื่อมต่อกับแหล่งข้อมูล เช่นเดียวกับการจัดการธุรกรรม
b) คำสั่งอนุญาตให้คุณจัดการข้อมูลต้นทาง ตลอดจนดำเนินการตามขั้นตอนที่จัดเก็บไว้ ในกรณีนี้ สามารถใช้พารามิเตอร์สำหรับการถ่ายโอนข้อมูลทั้งสองทิศทางได้
c) DataAdapter ทำหน้าที่เป็นตัวเชื่อมระหว่างฐานข้อมูลชุดข้อมูลที่มีอยู่และแหล่งข้อมูล และโดยปกติจะใช้วัตถุคำสั่งเพื่อดำเนินการคำสั่ง SQL ทั้งเมื่อเติมชุดข้อมูลด้วยข้อมูลและเมื่อส่งข้อมูลกลับที่เปลี่ยนแปลงโดยไคลเอ็นต์ไปยังแหล่งที่มา มีสี่วิธีในการทำหน้าที่เหล่านี้: SelectCommand, InsertCommand, UpdateCommand และ DeleteCommand
ง) DataReader ให้ข้อมูลแบบอ่านอย่างเดียวจากแหล่งที่มา หากแอปพลิเคชันไคลเอนต์ไม่แก้ไขข้อมูลและไม่ต้องการการเลือกข้อมูลโดยพลการ แต่การดูเพียงครั้งเดียวก็เพียงพอแล้ว การใช้ DataReader แทนชุดข้อมูลจะช่วยประหยัดทรัพยากรคอมพิวเตอร์และเพิ่มประสิทธิภาพของแอปพลิเคชัน
ฐานข้อมูลเชิงสัมพันธ์ที่อยู่อาศัย เป็นฐานข้อมูลเชิงสัมพันธ์ที่ไคลเอ็นต์ได้รับ ซึ่งจัดเก็บไว้ใน RAM ประจำเครื่อง
นอกจากนี้ ไคลเอนต์ออฟไลน์จะประมวลผลข้อมูล และถ้าจำเป็น ให้แก้ไขข้อมูลเหล่านั้น หลังจากนั้นการเชื่อมต่อไปยังเซิร์ฟเวอร์จะถูกสร้างขึ้นอีกครั้ง และข้อมูลที่แก้ไขจากฐานข้อมูลที่มีอยู่จะถูกส่งกลับ
รูปแบบการโต้ตอบดังกล่าวค่อนข้างคล้ายกับการทำงานของสถาปัตยกรรมไฟล์ -
เซิร์ฟเวอร์และมักใช้โดยองค์กรเมื่อทำงานกับฐานข้อมูลระยะไกลผ่านทาง เครือข่ายทั่วโลกอินเทอร์เน็ต.
เพื่อให้การเข้าถึงออบเจกต์ผ่านอินเทอร์เน็ตทั่วโลก ในฐานะส่วนหนึ่งของ ADO .NET โมดูล .NET FrameWork ได้รับการจัดหาซึ่งให้การโต้ตอบระหว่างรูปแบบการนำเสนอข้อมูลต่างๆ รวมถึง HTML และ XML
จากลักษณะดังกล่าว จะเห็นได้ว่า เทคโนโลยี ADO .NET มีลักษณะดังนี้
ความสามารถในการโต้ตอบระหว่างข้อมูลในรูปแบบต่างๆ รวมถึง HTML และ XML
ประหยัดค่าใช้จ่ายได้อย่างมากเมื่อทำงานกับฐานข้อมูลระยะไกลผ่านอินเทอร์เน็ตทั่วโลก
อัพเดทล่าสุด: 31.10.2015
ทุกวันนี้ การทำงานกับข้อมูลมีความสำคัญอย่างยิ่ง ใช้ในการเก็บข้อมูล ระบบต่างๆการจัดการฐานข้อมูล: MS เซิร์ฟเวอร์ SQL, Oracle, MySQL และอื่นๆ และแอปพลิเคชันขนาดใหญ่ส่วนใหญ่ใช้ระบบจัดการฐานข้อมูลเหล่านี้ไม่ทางใดก็ทางหนึ่งเพื่อจัดเก็บข้อมูล อย่างไรก็ตาม จำเป็นต้องมีตัวกลางในการสื่อสารระหว่างฐานข้อมูลและแอปพลิเคชัน C# และตัวกลางดังกล่าวคือเทคโนโลยี ADO.NET
ADO.NET เป็นเทคโนโลยีข้อมูลที่ใช้ .NET Framework เทคโนโลยีนี้นำเสนอชุดของคลาสซึ่งเราสามารถส่งข้อความค้นหาไปยังฐานข้อมูล สร้างการเชื่อมต่อ รับการตอบกลับจากฐานข้อมูล และดำเนินการอื่นๆ ได้อีกมากมาย
นอกจากนี้ สิ่งสำคัญคือต้องทราบว่าระบบจัดการฐานข้อมูลสามารถมีได้หลายระบบ โดยพื้นฐานแล้วอาจแตกต่างกัน ตัวอย่างเช่น MS SQL Server ใช้ ภาษา T-SQLในขณะที่ MySQL และ Oracle ใช้ PL-SQL ระบบฐานข้อมูลที่แตกต่างกันอาจมีประเภทของข้อมูลที่แตกต่างกัน จุดอื่น ๆ อาจแตกต่างกัน อย่างไรก็ตาม ฟังก์ชันการทำงานของ ADO.NET ถูกสร้างขึ้นเพื่อให้นักพัฒนามีส่วนติดต่อแบบรวมสำหรับการทำงานกับ DBMS ที่หลากหลาย
อินเทอร์เฟซฐานข้อมูลใน ADO.NET ขึ้นอยู่กับวัตถุบางประเภท: Connection, Command, DataReader, DataSet และ DataAdapter วัตถุการเชื่อมต่อสร้างการเชื่อมต่อกับแหล่งข้อมูล วัตถุคำสั่งช่วยให้คุณสามารถดำเนินการกับข้อมูลจากฐานข้อมูล วัตถุ DataReader อ่านข้อมูลที่ได้รับจากการร้องขอ วัตถุชุดข้อมูลได้รับการออกแบบมาเพื่อจัดเก็บข้อมูลจากฐานข้อมูลและอนุญาตให้คุณทำงานกับพวกเขาโดยไม่ขึ้นกับฐานข้อมูล และวัตถุ DataAdapter เป็นตัวกลางระหว่างชุดข้อมูลและแหล่งข้อมูล โดยพื้นฐานแล้วงานกับฐานข้อมูลจะดำเนินการผ่านวัตถุเหล่านี้
อย่างไรก็ตาม เพื่อใช้วัตถุชุดเดียวกันสำหรับแหล่งข้อมูลที่แตกต่างกัน เหมาะสม ผู้ให้บริการข้อมูล. อันที่จริงแล้ว การโต้ตอบกับฐานข้อมูลจะดำเนินการผ่านผู้ให้บริการข้อมูลใน ADO.NET ยิ่งไปกว่านั้น สำหรับแหล่งข้อมูลแต่ละแห่งใน ADO.NET สามารถมีผู้ให้บริการของตนเองได้ ซึ่งจะกำหนดการใช้งานเฉพาะของคลาสข้างต้น
ตามค่าเริ่มต้น ADO.NET มีผู้ให้บริการในตัวต่อไปนี้:
ผู้ให้บริการสำหรับ MS SQL Server
ผู้ให้บริการสำหรับ OLE DB (ให้การเข้าถึงเวอร์ชันเก่าของ MS SQL Server รวมถึงฐานข้อมูล Access, DB2, MySQL และ Oracle)
ผู้ให้บริการสำหรับ ODBC (ผู้ให้บริการสำหรับแหล่งข้อมูลที่ไม่มีผู้ให้บริการ)
ผู้ให้บริการสำหรับ Oracle
ผู้ให้บริการ EntityClient ผู้ให้บริการข้อมูลสำหรับเทคโนโลยี ORM Entity Framework
ผู้ให้บริการสำหรับ SQL Server Compact 4.0 Server
นอกจากผู้ให้บริการเหล่านี้ซึ่งมีมาให้แล้ว ยังมีผู้ให้บริการรายอื่นอีกมากมายที่ออกแบบมาสำหรับฐานข้อมูลต่างๆ เช่น MySQL
เนมสเปซหลักที่ใช้ใน ADO.NET คือ:
System.Data: กำหนดคลาส อินเทอร์เฟซ ผู้รับมอบสิทธิ์ที่ใช้สถาปัตยกรรม ADO.NET
System.Data.Common: มีคลาสทั่วไปสำหรับผู้ให้บริการ ADO.NET ทั้งหมด
System.Data.Design: กำหนดคลาสที่ใช้ในการสร้างชุดข้อมูลของตนเอง
System.Data.Odbc: กำหนดฟังก์ชันการทำงานของผู้ให้บริการข้อมูลสำหรับ ODBC
System.Data.OleDb: กำหนดฟังก์ชันการทำงานของผู้ให้บริการข้อมูลสำหรับ OLE DB
System.Data.Sql: เก็บคลาสที่รองรับการทำงานเฉพาะของ SQL Server
System.Data.OracleClient: กำหนดการทำงานของผู้ให้บริการสำหรับฐานข้อมูล Oracle
System.Data.SqlClient: กำหนดการทำงานของผู้ให้บริการสำหรับฐานข้อมูล MS SQL Server
System.Data.SqlServerCe: กำหนดฟังก์ชันการทำงานของผู้ให้บริการสำหรับ SQL Server Compact 4.0
System.Data.SqlTypes: มีคลาสสำหรับประเภทข้อมูล MS SQL Server
Microsoft.SqlServer.Server: จัดเก็บส่วนประกอบสำหรับ SQL Server เพื่อสื่อสารกับรันไทม์ภาษาทั่วไป
แผนผัง สถาปัตยกรรมของ ADO.NET สามารถแสดงได้ดังนี้:
ตามหน้าที่ คลาส ADO.NET สามารถแบ่งออกเป็นสองระดับ: เชื่อมต่อและยกเลิกการเชื่อมต่อ ผู้ให้บริการข้อมูล .NET แต่ละรายใช้เวอร์ชันของตนเองของ Connection, Command, DataReader, DataAdapter และออบเจกต์อื่นๆ ที่ประกอบกันเป็นเลเยอร์ที่เชื่อมต่อ นั่นคือด้วยความช่วยเหลือของพวกเขาการเชื่อมต่อกับฐานข้อมูลจะถูกสร้างขึ้นและดำเนินการโต้ตอบกับมัน ตามกฎแล้ว การใช้งานอ็อบเจ็กต์เหล่านี้สำหรับผู้ให้บริการเฉพาะแต่ละรายจะมีคำนำหน้าในชื่อซึ่งบ่งชี้ผู้ให้บริการ:
คลาสอื่นๆ เช่น DataSet, DataTable, DataRow, DataColumn และคลาสอื่นๆ ประกอบกันเป็นเลเยอร์ที่ไม่ได้เชื่อมต่อ เนื่องจากเมื่อข้อมูลถูกดึงเข้าสู่ DataSet เราสามารถทำงานกับข้อมูลนั้นได้ไม่ว่าจะสร้างการเชื่อมต่อหรือไม่ก็ตาม นั่นคือหลังจากได้รับข้อมูลจากฐานข้อมูลแล้ว แอปพลิเคชันสามารถตัดการเชื่อมต่อจากแหล่งข้อมูลได้
เมื่อสถาปนิกสถาปัตยกรรมระดับ n ประเมินเทคโนโลยี รูปแบบ หรือกลยุทธ์ใหม่ พวกเขาตัดสินใจว่าชิ้นส่วนใหม่ของจิ๊กซอว์จะเข้ากับสถาปัตยกรรมได้อย่างไร หากมี Entity Framework การรวมจะไม่ทำให้เกิดปัญหาใดๆ สามารถรวมเข้ากับสถาปัตยกรรม n-tier เช่นเดียวกับสถาปัตยกรรมชั้นเดียว
19.03.2009 15:32
คำถามที่พบบ่อยเกี่ยวกับ Entity Framework
การทำความเข้าใจการสร้างแบบจำลองเอนทิตี การแมปแบบจำลองดังกล่าวกับฐานข้อมูลเชิงสัมพันธ์ และการออกแบบแบบจำลองข้อมูลเอนทิตี (EDM) เป็นขั้นตอนแรกในการทำความเข้าใจกรอบการทำงานของเอนทิตี ฉันจะเริ่มต้นบทความนี้ด้วยการตอบคำถามเกี่ยวกับพื้นฐานของ Entity Framework รวมถึงคลาส ObjectContext จากนั้นตอบคำถามเกี่ยวกับเวลาและสถานที่ที่จะใช้ Entity Client กับ Entity SQL นอกจากนี้ ฉันวางแผนที่จะอธิบายความแตกต่างระหว่าง EntityClient และ Object Services และความหมายของการใช้ LINQ และ Entity SQL query พร้อมกับบริการเหล่านี้
16.02.2009 15:15
ภาพรวม ADO.NET Entity Framework
ในประเด็น วิชวลสตูดิโอในปี 2008 ADO.NET เปิดตัวสถาปัตยกรรม Entity Framework ใหม่ ช่วยให้นักพัฒนาสามารถเข้าถึงข้อมูลโดยใช้โมเดลวัตถุแทนโมเดลข้อมูลเชิงตรรกะหรือเชิงสัมพันธ์ Entity Framework ช่วยในการสรุป แผนภาพลอจิกข้อมูลลงในโมเดลแนวคิดและมีวิธีต่างๆ ในการโต้ตอบกับโมเดลแนวคิดผ่าน Object Services และผู้ให้บริการข้อมูลใหม่ที่เรียกว่า EntityClient บทความของเดือนนี้กล่าวถึงว่า Entity Framework คืออะไร นำไปใช้กับแอปพลิเคชันอย่างไร และออกแบบและเขียนโปรแกรมโดยคำนึงถึงสิ่งนี้อย่างไร
13.02.2009 18:44
การพัฒนา Entity Data Model ด้วย Entity Framework
Entity Framework คือ เทคโนโลยีใหม่ออกแบบมาสำหรับ ADO.NET ช่วยให้นักพัฒนาเห็นภาพข้อมูลโดยใช้แบบจำลองเชิงตรรกะมากกว่าแบบจำลองทางกายภาพ ซึ่งให้ความยืดหยุ่นในการพัฒนา ในนิตยสารฉบับเดือนกรกฎาคม 2550 ภายใต้หัวข้อ "จุดข้อมูล" เราได้ให้ ภาพรวมโดยละเอียดเทคโนโลยี Entity Framework (น่าจะเปิดตัวอย่างเป็นทางการในช่วงครึ่งแรกของปี 2551)
13.02.2009 18:33
การใช้แอตทริบิวต์เพื่อทำให้เป็นมาตรฐานและตรวจสอบเอนทิตีธุรกิจ
ในการเขียนโปรแกรมขององค์กร เมื่อออกแบบเลเยอร์การเข้าถึงข้อมูล คำถามเกี่ยวกับการทำงานกับวัตถุทางธุรกิจ (หน่วยงานธุรกิจ) มักจะเกิดขึ้น: สิ่งเหล่านี้กำลังโหลด / เปลี่ยนแปลง / บันทึก และย้ายระหว่างระดับต่างๆ มีสองวิธีหลักในการทำเช่นนี้ - โดยใช้หน่วยงานธุรกิจของคุณเองหรือ หมายถึงมาตรฐาน(ADO.NET ให้วิธีที่ค่อนข้างสะดวกในการทำเช่นนี้) - โดยใช้ชุดข้อมูล
20.01.2007 03:54
ADO.NET: ภาพรวมเทคโนโลยี
โปรแกรมเมอร์หลายคนทำงานกับฐานข้อมูลบน แพลตฟอร์มของ Microsoftสามารถชื่นชมความเรียบง่ายและความสะดวกสบายของเทคโนโลยี ADO - ActiveX Data Objects อินเทอร์เฟซที่ใช้งานง่ายและชุดของออบเจกต์แบบลอจิคัล บวกกับความง่ายในการเขียนโปรแกรม ได้รับการยอมรับจากโปรแกรมเมอร์อย่างสมควร แม้จะมีสิ่งนี้ พร้อมกับแพลตฟอร์ม .NET ใหม่ Microsoft ยังแนะนำเครื่องมือการเข้าถึงฐานข้อมูลรุ่นใหม่ - ADO.NET
27.12.2006 01:32
การดำเนินการกับข้อมูลที่มีโครงสร้างลำดับชั้น การพัฒนาแอปพลิเคชันแบบกระจายใน .NET
บทความนี้สาธิตเทคนิคการอ่านและเขียนชุดแถวลำดับชั้นในแหล่งข้อมูล ในตัวอย่างโค้ดที่ให้ไว้ในบทความนี้ เพื่อเชื่อมต่อกับฐานข้อมูล ข้อมูลไมโครซอฟต์ SQL Server หรือ Microsoft Desktop Engine (MSDE) ใช้ผู้ให้บริการที่มีการจัดการ SQL ในการเชื่อมต่อกับแหล่งข้อมูลอื่นที่สอดคล้องกับ OLEDB ให้ใช้ผู้ให้บริการที่มีการจัดการ ADO
27.12.2006 01:26
ทำงานกับข้อมูลออฟไลน์ใน ADO.NET
ADO.NET ซึ่งแตกต่างจาก ADO และ OLE DB รุ่นก่อน ได้รับการออกแบบมาโดยเฉพาะสำหรับใช้ใน เว็บแอปพลิเคชันซึ่งไม่มีการเชื่อมต่อกับฐานข้อมูลอย่างถาวร การทำงานแบบดั้งเดิมกับข้อมูลใน ADO.NET ถูกสร้างขึ้นตามโครงร่างต่อไปนี้: การเชื่อมต่อจากนั้นจะถูกเปิดโดยวิธีการเปิด วัตถุคำสั่งจะถูกสร้างขึ้นห่อหุ้ม คำสั่ง SQLจะดำเนินการและการเชื่อมต่อจะถูกปิด วิธีการนี้ให้การเข้าถึงเธรดเพื่อผลลัพธ์การสืบค้น เหล่านั้น. เมื่ออ่านข้อมูลด้วย DataReader คุณจะข้ามผ่านหลายระเบียนหรือย้อนกลับไปยังระเบียนก่อนหน้าไม่ได้ การเข้าถึงแบบสตรีมมิ่งมีประสิทธิภาพสูงสุด