मैं प्राप्त करने के लिए है कि NHibernate.Cfg.Configuration का उपयोग कर पा रहा था:
var cfg = new Configuration();
var filterDef = new FilterDefinition(
"filterName",
null, // or your default condition
new Dictionary<string, IType> { { "filterParamName", NHibernateUtil.Int32 } },
false);
cfg.AddFilterDefinition(filterDef);
// cfg.AddMapping(...)
// cfg.DataBaseIntegration(...)
var sessionFactory = cfg.BuildSessionFactory();
तो इकाई मानचित्रण में फिल्टर को परिभाषित:
public class EntityMap : ClassMapping<Entity>
{
public EntityMap()
{
Table("Entity");
Filter("filterName", m => m.Condition("FilteredField = :filterParamName"));
// remaining mapping
}
}
और फिर इस रूप में इसका इस्तेमाल करते हैं:
using(var session = sessionFactory.OpenSession())
{
var filterValue = 123;
session
.EnableFilter("filterName")
.SetParameter("filterParamName", filterValue);
}
मुझे आशा है कि आपको यह उपयोगी लगेगा।
स्रोत
2011-11-11 00:24:50
यह मेरा दिन बना दिया! –