define scalar function with ef4.1 code first?

2019-05-31 09:07发布

i have a function called distancebetween i wnat to define it in scalar valued function to call it by linq if there is away to do that by EF4.1 code first ?

2条回答
The star\"
2楼-- · 2019-05-31 09:29

No. Code first was designed as "code first" = you will create a code and it will create a database where no database logic exists (no views, stored procedures, triggers or functions). Because of that it is completely missing features for mapping database logic like functions and stored procedures. If you want to use it in LINQ you must abandon code-first / fluent-API and start tu use EDMX where this is supported.

查看更多
走好不送
3楼-- · 2019-05-31 09:32

Using ExecuteSqlCommand and an output parameter should do the trick for scalar stored procs

var outParam = new SqlParameter("overHours", SqlDbType.Int);
outParam.Direction = ParameterDirection.Output;

var data = context.Database.ExecuteSqlCommand("dbo.sp_getNumberJobs @overHours OUT", outParam);
int numJobs = (int)outParam.Value;
查看更多
登录 后发表回答