คำถามติดแท็ก entity-framework

สำหรับคำถามเกี่ยวกับ ADO.NET Entity Framework เครื่องมือ Object-Relational-Mapping (ORM) สำหรับ. NET Framework โปรดเพิ่มแท็กเฉพาะเวอร์ชันหากมี อย่าใช้แท็กนี้สำหรับคำถาม Entity-Framework-core ใช้ entity-framework-core แทน

15
เหตุใดฉันจึงได้รับข้อผิดพลาดนี้: ไม่มีการระบุการแมปสำหรับ EntitySet / AssociationSet - Entity1 ต่อไปนี้
ฉันใช้ Entity Framework 4 กับแนวทาง Model First ฉันเริ่มโครงการออกแบบเอนทิตีและสร้างฐานข้อมูล ทุกอย่างทำงานได้ดี จากนั้นฉันต้องกลับไปเพิ่มเอนทิตีอื่นในโมเดลของฉัน อย่างไรก็ตามเมื่อฉันลากเอนทิตีไปที่ EDMX ฉันได้รับข้อผิดพลาดนี้: ได้เลย! ฉันแค่ต้องแมป Entity1 กับตาราง .. แต่เดี๋ยวก่อน! ฉันใช้แนวทาง Model First ฉันคาดว่าจะสร้างตารางให้ฉันเมื่อฉันสร้าง DDL ฉันจะแก้ไขข้อผิดพลาดนี้ได้อย่างไร

21
ไม่สามารถโหลดงาน BuildTasks.Csc จากแอสเซมบลี?
ฉันรู้สึกผิดที่ถามคำถามแบบนี้ที่นี่ แต่ฉันรู้สึกไม่ดีและขอขอบคุณสำหรับความช่วยเหลือ การพิสูจน์แนวคิดเช่นเว็บแอปพลิเคชันถูกสร้างขึ้นบนพีซีเครื่องหนึ่งและวางไว้บน repo เพื่อดาวน์โหลดบนพีซีเครื่องอื่นในสถานที่อื่น เดิมมีการตั้งค่าคุณลักษณะสร้างอัตโนมัติโดยที่ Azure จะสร้างและเผยแพร่โดยอัตโนมัติเมื่อเช็คอิน แต่จะถูกลบออกไป สิ่งต่าง ๆ กำลังดำเนินการทั้งสองด้านจนกระทั่งด้านหนึ่งมีการเปลี่ยนแปลงที่ยกเว้นจำนวนมาก ตอนนี้ฉันพบข้อผิดพลาดต่อไปนี้: ไม่สามารถ โหลดงาน "Microsoft.CodeAnalysis.BuildTasks.Csc" จากแอสเซมบลี ... \ package \ Microsoft.Net.Compilers.1.0.0 \ build .. \ tools \ Microsoft.Build.Tasks.CodeAnalysis.dll ไม่สามารถโหลดไฟล์หรือไฟล์แอสเซมบลี 'file: /// ... \ package \ Microsoft.Net.Compilers.1.0.0 \ tools \ Microsoft.Build.Tasks.CodeAnalysis.dll' หรือการอ้างอิงอย่างใดอย่างหนึ่ง ระบบไม่พบแฟ้มที่ระบุ. ยืนยันว่าการประกาศนั้นถูกต้องแอสเซมบลีและการอ้างอิงทั้งหมดพร้อมใช้งานและงานมีคลาสสาธารณะที่ใช้ Microsoft.Build.Framework.ITask ใครมีคำแนะนำว่าจะเริ่มค้นหาปัญหาได้ที่ไหน?

21
การตั้งค่าเริ่มต้นของคุณสมบัติ DateTime เป็น DateTime ตอนนี้อยู่ใน System.ComponentModel ค่าเริ่มต้น Attrbute
มีใครทราบบ้างว่าฉันสามารถระบุค่าดีฟอลต์สำหรับคุณสมบัติ DateTime โดยใช้ System.ComponentModel DefaultValue Attribute ได้อย่างไร ตัวอย่างเช่นฉันลองสิ่งนี้: [DefaultValue(typeof(DateTime),DateTime.Now.ToString("yyyy-MM-dd"))] public DateTime DateCreated { get; set; } และคาดว่าค่าจะเป็นนิพจน์คงที่ นี่คือในบริบทของการใช้กับ ASP.NET Dynamic Data ฉันไม่ต้องการนั่งร้านคอลัมน์ DateCreated แต่เพียงแค่จัดหา DateTime ตอนนี้ถ้าไม่มี ฉันใช้ Entity Framework เป็นชั้นข้อมูลของฉัน ไชโย แอนดรู

28
ไม่สามารถสร้างการโยกย้ายอย่างชัดเจนในกรอบงานเอนทิตี
ฉันกำลังเพิ่มการย้ายข้อมูลใหม่ แต่ข้อความนี้แสดง: ไม่สามารถสร้างการย้ายข้อมูลอย่างชัดเจนเนื่องจากการย้ายข้อมูลอย่างชัดเจนต่อไปนี้กำลังรอดำเนินการ: [201203170856167_left] ใช้การย้ายข้อมูลที่ชัดเจนที่รอดำเนินการก่อนที่จะพยายามสร้างการย้ายข้อมูลใหม่อย่างชัดเจน มีใครช่วยฉันได้บ้าง?

4
LINQ to Entities รองรับเฉพาะการหล่อ EDM แบบดั้งเดิมหรือชนิดการนับด้วยอินเทอร์เฟซ IEntity
ฉันมีวิธีการขยายทั่วไปดังต่อไปนี้: public static T GetById<T>(this IQueryable<T> collection, Guid id) where T : IEntity { Expression<Func<T, bool>> predicate = e => e.Id == id; T entity; // Allow reporting more descriptive error messages. try { entity = collection.SingleOrDefault(predicate); } catch (Exception ex) { throw new InvalidOperationException(string.Format( "There was an error retrieving …

9
ไม่ใช้รูปแบบพื้นที่เก็บข้อมูลให้ใช้ ORM ตามที่เป็น (EF)
ฉันใช้รูปแบบพื้นที่เก็บข้อมูลเสมอ แต่สำหรับโปรเจ็กต์ล่าสุดของฉันฉันต้องการดูว่าฉันสามารถใช้มันได้อย่างสมบูรณ์แบบหรือไม่และการนำ "หน่วยงาน" ไปใช้หรือไม่ ยิ่งฉันเริ่มขุดมากขึ้นฉันก็เริ่มถามตัวเองว่า"ฉันต้องการมันจริงๆหรือ" ตอนนี้ทั้งหมดนี้เริ่มต้นด้วยความคิดเห็นสองสามรายการใน Stackoverflow พร้อมติดตามโพสต์ของ Ayende Rahien ในบล็อกของเขาโดยมี 2 ข้อความที่เจาะจง ที่เก็บคือสิ่งใหม่ - ซิงเกิลตัน ask-ayende-life-without-repositories-are-they-worth-living สิ่งนี้อาจถูกพูดถึงตลอดไปและตลอดไปและขึ้นอยู่กับการใช้งานที่แตกต่างกัน ฉันอยากรู้อะไร แนวทางนี้จะเหมาะกับโครงการ Entity Framework หรือไม่ การใช้วิธีนี้เป็นตรรกะทางธุรกิจที่ยังคงอยู่ในชั้นบริการหรือวิธีการขยาย (ตามที่อธิบายไว้ด้านล่างฉันรู้วิธีการขยายกำลังใช้เซสชัน NHib) ทำได้อย่างง่ายดายโดยใช้วิธีการขยาย สะอาดเรียบง่ายและใช้ซ้ำได้ public static IEnumerable GetAll( this ISession instance, Expression<Func<T, bool>> where) where T : class { return instance.QueryOver().Where(where).List(); } การใช้แนวทางนี้และNinjectในฐานะ DI ฉันจำเป็นต้องสร้างContextอินเทอร์เฟซและฉีดเข้าไปในคอนโทรลเลอร์ของฉันหรือไม่

4
ในรหัสกรอบงานเอนทิตีก่อนวิธีใช้ KeyAttribute ในหลายคอลัมน์
ฉันกำลังสร้างแบบจำลอง POCO เพื่อใช้กับรหัสกรอบงานเอนทิตีแรก CTP5 ฉันใช้การตกแต่งเพื่อสร้างแผนที่คุณสมบัติให้กับคอลัมน์ PK แต่ฉันจะกำหนด PK ในคอลัมน์มากกว่าหนึ่งคอลัมน์ได้อย่างไรและโดยเฉพาะอย่างยิ่งฉันจะควบคุมลำดับของคอลัมน์ในดัชนีได้อย่างไร เป็นผลมาจากลำดับคุณสมบัติในคลาสหรือไม่? ขอบคุณ!

1
บริบท DB หลายรายการในฐานข้อมูลและแอปพลิเคชันเดียวกันใน EF 6 และ Code First Migrations
ฉันเพิ่งเริ่มใช้ Entity Framework ฉันกำลังพยายามตั้งค่าแอปพลิเคชัน MVC ที่ใช้ EF 6 ฉันใช้ Code First Migrations ฉันใช้ Areas ในแอปและต้องการให้ DbContexts แตกต่างกันในแต่ละพื้นที่เพื่อแยกมันออก ฉันรู้ว่า EF 6 มี ContextKey แต่ฉันไม่พบข้อมูลทั้งหมดเกี่ยวกับวิธีใช้ ขณะนี้ฉันสามารถใช้การย้ายข้อมูลได้ทีละบริบทเท่านั้น ใครช่วยยกตัวอย่างที่มีรายละเอียดเพียงพอให้คนใหม่ EF อย่างฉันเข้าใจและนำไปใช้ได้

6
แบบสอบถาม Entity Framework ช้า แต่ SQL เดียวกันใน SqlQuery นั้นเร็ว
ฉันเห็นความสมบูรณ์แบบแปลก ๆ ที่เกี่ยวข้องกับแบบสอบถามที่เรียบง่ายมากโดยใช้ Entity Framework Code-First กับ. NET framework เวอร์ชัน 4 แบบสอบถาม LINQ2Entities มีลักษณะดังนี้: context.MyTables.Where(m => m.SomeStringProp == stringVar); ซึ่งใช้เวลามากกว่า 3,000 มิลลิวินาทีในการดำเนินการ SQL ที่สร้างขึ้นนั้นดูเรียบง่ายมาก: SELECT [Extent1].[ID], [Extent1].[SomeStringProp], [Extent1].[SomeOtherProp], ... FROM [MyTable] as [Extent1] WHERE [Extent1].[SomeStringProp] = '1234567890' แบบสอบถามนี้ทำงานเกือบจะทันทีเมื่อเรียกใช้ผ่าน Management Studio เมื่อฉันเปลี่ยนรหัส C # เพื่อใช้ฟังก์ชัน SqlQuery มันจะทำงานใน 5-10 มิลลิวินาที: context.MyTables.SqlQuery("SELECT [Extent1].[ID] …

2
อัปเดตหลายแถวใน Entity Framework จากรายการรหัส
ฉันกำลังพยายามสร้างแบบสอบถามสำหรับกรอบงานเอนทิตีที่จะช่วยให้ฉันสามารถจดรายการรหัสและอัปเดตฟิลด์ที่เกี่ยวข้องได้ ตัวอย่างใน SQL: UPDATE Friends SET msgSentBy = '1234' WHERE id IN (1, 2, 3, 4) ฉันจะแปลงข้างต้นเป็นกรอบงานเอนทิตีได้อย่างไร


3
จะอัปเดตหลายแถวพร้อมกันโดยใช้ linq เป็น sql ได้อย่างไร
ตาราง: id userid friendid name status 1 1 2 venkat false 2 1 3 sai true 3 1 4 arun false 4 1 5 arjun false หากผู้ใช้ส่ง userid = 1, friendids = 2,4,5 status = true โปรดบอกฉันว่าคำถามเกี่ยวกับวิธีอัปเดตสถานะ friendids ข้างต้นเป็นจริง [ครั้งละ 2,3,4].? ขอบคุณ

7
คุณสามารถใช้ Microsoft Entity Framework กับ Oracle ได้หรือไม่ [ปิด]
ปิด . คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เน้นไปที่ปัญหาเดียวโดยแก้ไขโพสต์นี้เท่านั้น ปิดให้บริการเมื่อปีที่แล้ว ปรับปรุงคำถามนี้ เป็นไปได้ไหมที่จะใช้ Microsoft Entity Framework กับฐานข้อมูล Oracle

5
Linq Query ยังคงโยน“ ไม่สามารถสร้างค่าคงที่ของประเภท System.Object …” ทำไม?
ต่อไปนี้เป็นตัวอย่างโค้ด: private void loadCustomer(int custIdToQuery) { var dbContext = new SampleDB(); try { var customerContext = from t in dbContext.tblCustomers // keeps throwing: where t.CustID.Equals(custIdToQuery) // Unable to create a constant value of type 'System.Object'. select new // Only primitive types ('such as Int32, String, and Guid') { // are …

6
เพิ่มคำอธิบายประกอบข้อมูลไปยังคลาสที่สร้างโดยกรอบงานเอนทิตี
ฉันมีคลาสต่อไปนี้ที่สร้างโดยเอนทิตีเฟรมเวิร์ก: public partial class ItemRequest { public int RequestId { get; set; } //... ฉันต้องการกำหนดให้เป็นฟิลด์บังคับ [Required] public int RequestId { get;set; } อย่างไรก็ตามเนื่องจากรหัสนี้ถูกสร้างขึ้นสิ่งนี้จะถูกลบออก ฉันนึกไม่ออกว่าจะสร้างคลาสบางส่วนได้อย่างไรเนื่องจากคุณสมบัติถูกกำหนดโดยคลาสบางส่วนที่สร้างขึ้น ฉันจะกำหนดข้อ จำกัด อย่างปลอดภัยได้อย่างไร?

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.