实体框架Database.SqlQuery方法调用PostgreSQL函数返回DateTime而不是DateTimeOffset

时间:2017-10-10 14:21:40

标签: postgresql entity-framework-6

你知道如何使用方法EFContext.Database.SqlQuery从Entity Framework调用PostgreSQL函数时获取DateTimeOffset吗?

我创建了PostgreSQL函数,它返回包含6列的表,其中2列具有带时区的时间戳类型。 当我直接从pgAdmin调用此函数时,我可以看到ActionDate列的以下结果:' 2017-10-10 08:02:33.602553 + 02'

但是当我在C#类中使用DateTimeOffset时,我得到以下方法调用错误:EFContext.Database.SqlQuery<EligibleClientResponse>("select * from dbo.\"GetEligibleClients\"(:productCoreId, :adviserId, :productCoreCode)"

错误: &#34;来自物化&#39; System.DateTime&#39;的指定演员表输入可以为空的System.DateTimeOffset&#39;类型无效。&#34;

我的C#课程是:

    public class EligibleClientResponse
{
    public string DashboardSectionCode { get; set; }
    public Guid ClientId { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public DateTimeOffset? BirthDate { get; set; }
    public string Email { get; set; }
    public string Phone { get; set; }
    public int ClientStatus { get; set; }
    public DateTimeOffset? ActionDate { get; set; }
    public string[] Actions { get; set; }
}

理查德

0 个答案:

没有答案