Tôi đang phát triển nhật ký liên hệ trong trang web sử dụng VS 2010, MVC3 và EF 5 - các thực thể được tạo bằng mã đầu tiên. Dữ liệu được lưu trữ trong bộ cơ sở dữ liệu SQL Server 2008 R2. Tôi muốn hiển thị bản tóm tắt nhật ký liên hệ và đã tạo chế độ xem.Sử dụng chế độ xem SQL từ mã khung thực thể Phiên bản đầu tiên 5
CREATE VIEW dbo.ContactLogSummaries
AS
SELECT
CLE.ContactLogEntryID,
CLE.CaseID,
'Test' AS ContactName,
EU.UserName As OfficeUser,
CLE.DateAndTimeOfContact,
CLC.Category,
CLE.ContactDetails
FROM
ContactLogEntries AS CLE
JOIN
ContactLogCategories AS CLC
ON CLE.ContactLogCategoryID = CLC.ContactLogCategoryID
JOIN
Control.dbo.EndUsers AS EU
ON CLE.UserID = EU.EnduserID
Có hai đối tượng trong cơ sở dữ liệu Liên hệ Log (ContactLogEntries
và ContactLogCategories
) và một cơ sở dữ liệu thực thể đầu tiên Control.dbo.EndUsers
trong cơ sở dữ liệu khác. Nhật ký liên hệ có thể chứa một số lượng lớn các bản ghi. Tôi muốn có thể hiển thị chỉ các bản ghi cho một trường hợp cụ thể.
Câu hỏi của tôi là ở hai phần:
- Tôi có thể sử dụng SQL xem trực tiếp để hiển thị một bản tóm tắt trên một trang web (có lẽ bằng cách đọc nó vào một lớp học)
- Tôi có thể tạo một mã số đầu tiên đối tượng tương đương với khung nhìn SQL.
Không có gì nói SQL Injection như nối chuỗi! – SwampyFox
Không có SQL Injection ở đây. Một - đây là một ví dụ minh họa; hai, CaseID không được trả lại từ trang web. Tôi có thể có một cộng một của tôi trở lại xin vui lòng? –
Peter - Tôi có thể hiểu rằng mã này là minh họa trong tự nhiên, nhưng không có cách nào mà người đọc có thể biết liệu CaseID có xuất phát từ thứ gì đó được đăng lên một biểu mẫu hay không.). Tôi sẽ đặt dấu cộng của bạn trở lại nếu bạn tham số hóa chuỗi. Nó sẽ làm cho mã của bạn lâu hơn một chút, nhưng, nó sẽ là một ví dụ vững chắc cho cộng đồng. Nó cũng sẽ cho phép SQL Server tạo một kế hoạch thực hiện cho truy vấn này để tái sử dụng sau này. – SwampyFox