EntityFramework中有一个数据库字段未更新

本文关键字:更新 字段 数据库 有一个 EntityFramework | 更新日期: 2023-09-27 18:20:58

我在SQL Server 2012:中有一个存储过程

CREATE procedure [dbo].[GetEmailThread]
(
@id int
)
AS
SELECT e.Id, e.Created, e.MailFrom, e.MailTo, e.Body, e.Sended, ip.Ip, e2.Sended as ReplySended, e2.Body as ReplyBody, e2.Id as ReplyId
FROM Emails e 
LEFT JOIN IpAddress ip ON (ip.Id = e.IpId)
LEFT JOIN Emails e2 ON (e.Id = e2.ParentEmailId)
WHERE e.RealtyId = @id
ORDER BY e.Sended, ReplySended

电子邮件表的定义:

CREATE TABLE [dbo].[Emails](
    [Id] [int] IDENTITY(1,1) NOT NULL,
    [Created] [datetime] NOT NULL,
    [MailFrom] [nvarchar](100) NOT NULL,
    [MailTo] [nvarchar](500) NOT NULL,
    [Subject] [nvarchar](500) NULL,
    [Body] [nvarchar](max) NULL,
    [Sended] [datetime] NULL,
    [Ip] [varchar](15) NULL,
    [ReplyTo] [nvarchar](100) NULL,
    [IpId] [int] NULL,
    [RealtyId] [int] NULL,
    [ParentEmailId] [int] NULL,
    [IsBodyHtml] [bit] NOT NULL CONSTRAINT [DF_Emails_IsBodyHtml]  DEFAULT ((0)),

以及C#中的EntityFramework模型。每当我在Visual Studio模型浏览器中右键单击此EntityFramework模型并选择菜单"从数据库更新模型"时,模型就会更新,但GetEmailThread_Result中的字段MailTo总是缺失。

我需要手动将其添加到模型GetEmailThread_Result.cs中,以使其正常工作。

为什么?为什么这样?我看不出这个领域有什么特别之处。为什么不选择MailFrom?

EntityFramework中有一个数据库字段未更新

解决方案是在项目中手动编辑EF文件,因为它们已损坏,有关详细信息,请参阅更新实体框架模型