Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用NHibernate';s会话。获取<&燃气轮机;()带复合密钥_C#_.net_Nhibernate_Composite Key - Fatal编程技术网

C# 使用NHibernate';s会话。获取<&燃气轮机;()带复合密钥

C# 使用NHibernate';s会话。获取<&燃气轮机;()带复合密钥,c#,.net,nhibernate,composite-key,C#,.net,Nhibernate,Composite Key,我在数据库表/NHibernate实体中有一个复合键。我是否可以使用.Get方法获取特定实体,或者由于复合键,我是否必须使用HQL/Criteria?与此复合键映射: <class name="MyClass"> <composite-id> <key-property name="Key1" /> <key-property name="Key2" /> </composite-id>

我在数据库表/NHibernate实体中有一个复合键。我是否可以使用
.Get
方法获取特定实体,或者由于复合键,我是否必须使用HQL/Criteria?

与此复合键映射:

<class name="MyClass">
    <composite-id>
        <key-property name="Key1" />
        <key-property name="Key2" />
    </composite-id>
    <property name="..." />
</class>

…您可以使用。如下所示:

var x = Session.Get<MyClass>(new MyClass() { Key1 = 'Foo', Key2 = 'Bar'});
var x=Session.Get(新的MyClass(){Key1='Foo',Key2='Bar'});

这甚至适用于包含引用类的复合ID。只需构造包含所请求ID的对象图。只需指出,这将不适用于匿名类。