执行自定义查询 - 实体框架

c# entity-framework winforms

我想执行自定义查询以获取DB服务器的datetime使用实体框架select Getdate() 。我怎样才能做到这一点?

谢谢

一般承认的答案

ObjectQuery<DateTime> date = new ObjectQuery<DateTime>("select Getdate()", context)
DateTime now = date.Single();

热门答案

你可以尝试这样的想法:

public static partial class ObjectContextExtension
{
    public static T ExecuteScalarCommand<T>(this ObjectContext context, string command)
    {
        DbConnection connection = ((EntityConnection)context.Connection).StoreConnection;
        if (connection.State == ConnectionState.Closed)
            connection.Open();

        DbCommand cmd = connection.CreateCommand();
        cmd.CommandText = command;
        cmd.CommandType = CommandType.Text;

        return (T)cmd.ExecuteScalar();
    }

它将方法“ExecuteScalarCommand”添加到ObjectContext。
您只需将SQL请求作为参数和泛型类型的返回类型。




许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因
许可下: CC-BY-SA with attribution
不隶属于 Stack Overflow
这个KB合法吗? 是的,了解原因