0
NHibernate aracılığıyla saklı yordamı nasıl arayacağımı bilmiyorum. Bu yüzden aşağıdaki gibi arama yaptım ve kodlandım.C# Nhibernate tarafından mysql saklı yordamı yürütülemiyor
Saklı Yordam ÖNCE tetikleyici bir değişken veya YENİ sözde değişken Ama hata
OUT veya rutin INOUT argüman 3 var değil:
DELIMITER $$ USE ih$$ DROP PROCEDURE IF EXISTS ms_getDate$$ CREATE [email protected]% PROCEDURE ms_getDate(OUT datetype VARCHAR(2)) BEGIN SET datetype = 0; SELECT a.Type into datetype FROM hr_employees a WHERE a.Flag= '1'; END$$ DELIMITER;
C#
NHibernate
<?xml version="1.0" encoding="utf-8" ?> <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" > <sql-query name="ms_getDate" callable="true" > <return-scalar column="datetype" type="String" /> call ms_getDate </sql-query> </hibernate-mapping>
Kod
public class At_InsertPlanningStoredProcedure { public virtual int datetype { get; set; } }
parametresini kaldırmak ve sadece kullanarak değeri döndürmek gerekirusing (DbSession dbSession = new DbSession()) { try { IQuery query = dbSession.session.GetNamedQuery("at_insertplanning"); At_InsertPlanningStoredProcedure a = query.UniqueResult<At_InsertPlanningStoredProcedure>(); }catch (Exception ex){} }