Tôi đã thu hẹp điều này thành một số vấn đề giữa Code First và Database first EF, nhưng tôi không chắc chắn cách khắc phục nó. Tôi sẽ cố gắng nói rõ nhất có thể, nhưng thành thật mà nói, bản thân tôi cũng thiếu một số hiểu biết ở đây. Đây là Khung thực thể 4.4
Tôi kế thừa một dự án trong đó Entity Framework đã được sử dụng, nhưng nhiều tệp thực tế đã bị xóa mà không có cách nào thực sự để quay lại. Tôi đã thêm lại EF (Cơ sở dữ liệu trước) và sao chép thiết lập T4 mà dự án đã được xây dựng xung quanh. Nó tạo ra các phiên bản mã của tất cả các mô hình cơ sở dữ liệu và một tệp mã DBContext.
Nếu chuỗi kết nối của tôi trông giống như một chuỗi kết nối .NET "bình thường", tôi gặp lỗi về cột không hợp lệ. Tên "ProcessState_ID" không tồn tại. ProcessState_ID hoàn toàn không có trong mã cơ sở, nó không có trong tệp EDMX hoặc bất cứ thứ gì. Đây dường như là một số chuyển đổi EF tự động trong truy vấn.
Khi tôi làm cho chuỗi kết nối khớp với mô hình Entity Framework, nó hoạt động tốt.
Bây giờ khi cố gắng khớp mã trước đó với Entity Framework, tôi muốn giữ chuỗi kết nối .NET "bình thường".
Vì vậy, tôi có hai câu hỏi ở đây: 1. Cách tốt để đi từ một chuỗi kết nối bình thường sang một chuỗi kết nối EF trong mã là gì? 2. Có bản sửa lỗi nào khác ở đây mà tôi không thấy để ngăn lỗi tên cột không hợp lệ không?
public virtual Person Person { get; }