The data reader is incompatible with the specified?

Xin chào mọi người,
Mình có 1 vấn đề như sau: Project của mình sử dụng database và có 2 bảng (sử dụng ADO.NET Entity Framework):

Mình có 1 stored procedure để lọc kết quả trộn từ 2 bảng trên:

CREATE PROCEDURE [dbo].[SP_SELECT]
AS
BEGIN
    SELECT I.Id, I.Name, C.Name
    FROM ITEM I, CATEGORY C
    WHERE I.CategoryID = C.Id
END

Mình chạy stored procedure nhưng gặp 1 lỗi như sau:
The data reader is incompatible with the specified ‘TEST2Model.SP_SELECT_Result’. A member of the type, ‘Name1’, does not have a corresponding column in the data reader with the same name.

Mình đoán là do trùng thuộc tính Name của bảng ITEM và thuộc tính Name của bảng CATEGORY. Mình cũng đã thử đổi tên thuộc tính thành tên khác thì OK nhưng trong trường họp database mình được giao đã cố đinh hết tên thuộc tính và không thể sửa được. Mong mọi người cho mình hướng giải quyết!

Cảm ơn mọi người nhiều!

Hello bạn!

Khi bạn để default thì 2 cột đều có label là “Name”. Theo mình (chưa thử) bạn có thể fix bằng cách đặt alis trong Store Procedure trên cho 2 cột Name khác nhau là được.

SELECT I.Id, I.Name AS 'ItemName', C.Name AS 'CategoryName'

Hope it will be useful for you!

1 Like

Nó thật sự hoạt động, cảm ơn bạn rất nhiều! Chúc bạn nhiều sức khỏe!

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?