Since version 4.0, the Entity Framework has had the ability to query un-mapped data and project it onto POCOs using ad-hoc SQL.
Here, for example, is how we check the current SQL Server version:
internal class SqlVersionInfo { public string Edition { get; set; } public string ProductLevel { get; set; } public string ProductVersion { get; set; } } private static SqlVersionInfo GetSqlServerVersion(ObjectContext context) { const string sql = @"SELECT SERVERPROPERTY('productversion') as [ProductVersion], SERVERPROPERTY('productlevel') as [ProductLevel], SERVERPROPERTY('edition') as [Edition];"; var reader = context.ExecuteStoreQuery<SqlVersionInfo>(sql); return reader.Single(); }
Note that no mapping step is required — the code will just run with any ObjectContext at all.
Post a Comment