อยากกำหนด ตัวแปร เพื่อใช้แทนที่ใน Ling-SQL ยังไงครับ แบบว่ามีหลายฟอร์มอ่ะครับ
ในกรณีของ parameter แล้ว fix object table ทำได้ค่อนข้างง่ายค่ะใช้ function หุ้ม
แต่ถ้าคุนจะเริ่มโยก object table ละก็ค่อนข้างจะปวดหัวหน่อยค่ะ
ในดระบบเดิมๆ เราเรียกการทำแบบนี้ว่า dynamic sql statement ค่อนข้างจะ advance มีเงื่อนไขเยอะ
แล้วตัว linq เองก็ไม่ใช่ยาครอบจักรวาลไม่ได้คิดกรณีนี้เผื่อให้
หรือทำให้มันง่ายขึ้นเลยตรงกันข้ามกลับทำให้ยากขึ้นไปอีก (ความเห็นส่วนตัว)
เพราะที่แนะนำกันคือใช้ repository มาสร้าง interface แล้วเรียกใช้ผ่านอีกที
หรือ execute ผ่าน sql command ตรงๆ โดยส่วนตัวจะใช้กรณีหลังค่ะ
Date :
2010-08-24 23:08:20
By :
blurEyes
คนตอบน่ารักจัง
ถามเพิ่มนะครับ
ถ้าเรียกผ่าน sql โดยตรงแล้วความเร็วจะเร็วกว่าไหมครับ
แล้วต้องเขียนโค้ดยังไงครับ ขอตัวอย่างด้วยนะครับ
ขอบคุณครับ
Date :
2010-08-25 09:17:19
By :
man
ทางทฤษฎีแล้วเร็วขึ้นค่ะเพราะ bypass sql auto generate ของ linq
วิธีใช้งานก้อใช้ method excutequery ของ datacontext ค่ะ
Code (C#)
Northwnd db = new Northwnd(@"c:\northwnd.mdf");
IEnumerable<Customer> results = db.ExecuteQuery<Customer>
(@"SELECT c1.custid as CustomerID, c2.custName as ContactName
FROM customer1 as c1, customer2 as c2
WHERE c1.custid = c2.custid"
);
LINQ to SQL (Part 8 - Executing Custom SQL Expressions)
ประวัติการแก้ไข 2010-08-25 13:32:10 2010-08-25 13:40:19
Date :
2010-08-25 13:26:35
By :
blurEyes
Load balance : Server 03