小编rca*_*ier的帖子

从表值函数nhibernate中选择

我需要一点帮助.我正在尝试在select中使用表值函数,但是我得到了这个未映射的错误.

dbo.FnListEvnt未映射[来自dbo.FnListEvnt(:dt,:id,:code)]

功能

CREATE FUNCTION [dbo].[FnListEvnt]
(@DT DATETIME, @ID INT, @CODE VARCHAR (4)) 
RETURNS 
    @RESULTADO TABLE (
        ID            INT          ,
        DT_INIC            DATETIME     ,
        DT_TMNO            DATETIME     ,
        CD_EVNT            VARCHAR (5)  )
AS
BEGIN
Run Code Online (Sandbox Code Playgroud)

自定义方言(这在.config中定义)

public class CustomFunctionsMsSql2008Dialect : MsSql2008Dialect
    {
        public CustomFunctionsMsSql2008Dialect()
        {
            RegisterFunction("dbo.FnListEvnt", new StandardSQLFunction("dbo.FnListEvnt", null));
        }
    }
Run Code Online (Sandbox Code Playgroud)

询问

var query = Session.CreateQuery("from dbo.FnListEvnt(:dt, :id, :code) ")
                  .SetDateTime("dt", dt)
                  .SetInt32("id", id)
                  .SetString("code", code);
Run Code Online (Sandbox Code Playgroud)

c# sql-server nhibernate hql user-defined-functions

5
推荐指数
1
解决办法
2816
查看次数

标签 统计

c# ×1

hql ×1

nhibernate ×1

sql-server ×1

user-defined-functions ×1