設定によりどちらのモラムダの拡張子は使用できませんの他のエイリアスのクエリに紐づ

StackOverflow https://stackoverflow.com/questions/2449010

質問

ようにしている書簡単なクエリを必要とするエイリアスとしても多assocationしんで仕事をNHラムダ仕様の拡張を認識しません。でも与えられることになるコンパイルエラーなど私も全く同じ文書およびすべての例でいます。

作品

var query = DetachedCriteria.For<County>()            
    .CreateCriteria("Zips", "zipAlias", JoinType.LeftOuterJoin)
    //.CreateCriteria<County>(x => x.Zips, 
    //                              () => zipAlias, JoinType.LeftOuterJoin)
    .Add<Zip>(zip => zip.ZipCode == zipCode);

動作しない

var query = DetachedCriteria.For<County>()            
    //.CreateCriteria("Zips", "zipAlias", JoinType.LeftOuterJoin)
    .CreateCriteria<County>(x => x.Zips, 
                                    () => zipAlias, JoinType.LeftOuterJoin)
    .Add<Zip>(zip => zip.ZipCode == zipCode);

結果の構築 Error 22 The name 'zipAlias' does not exist in the current context

を行頭に付けたものCreateCriteria**<County>**うな手法が理解できるような正しく表示パラメータ名が私のパー.

役に立ちましたか?

解決

文書 は便利。

zipAlias 必要変数の範囲におい

Zip zipAlias = null;
string zipCode = "";

var query = DetachedCriteria.For<County>()
    .CreateCriteria<County>(x => x.Zips, () => zipAlias, JoinType.LeftOuterJoin)
    .Add<Zip>(zip => zip.ZipCode == zipCode);

コンピュリンクダウンロードの代わりにレンダリング、コピーもいます。

を基準協会との別名
オリジナルコンICriteria API:

ICriteria before = CreateSession()
    .CreateCriteria(typeof(Person))
        .CreateCriteria("Children", "childAlias")
            .Add(Restrictions.Eq("Nickname", "test"));

利用設定によりどちらのモラムダ仕様の拡張:

Child childAlias = null;
ICriteria after = CreateSession()
    .CreateCriteria(typeof(Person))
        .CreateCriteria((Person p) => p.Children, () => childAlias)
            .Add<Child>(c => c.Nickname == "test");

を基準エイリアス協会との別名と参加型
オリジナルコンICriteria API:

ICriteria before = CreateSession()
    .CreateCriteria(typeof(Person), "personAlias")
        .CreateCriteria("personAlias.Children", "childAlias", JoinType.LeftOuterJoin)
            .Add(Restrictions.Eq("Nickname", "test"));

利用設定によりどちらのモラムダ仕様の拡張:

Person personAlias = null;
Child childAlias = null;
ICriteria after = CreateSession()
    .CreateCriteria(typeof(Person), () => personAlias)
        .CreateCriteria(() => personAlias.Children, () => childAlias, JoinType.LeftOuterJoin)
            .Add<Child>(c => c.Nickname == "test");

を基準協会との別名と参加型
オリジナルコンICriteria API:

DetachedCriteria before =
    DetachedCriteria.For<Person>()
        .CreateCriteria("Children", "childAlias", JoinType.LeftOuterJoin)
            .Add(Restrictions.Eq("Nickname", "test"));

利用設定によりどちらのモラムダ仕様の拡張:

Child childAlias = null;
DetachedCriteria after =
    DetachedCriteria.For<Person>()
        .CreateCriteria((Person p) => p.Children, () => childAlias, JoinType.LeftOuterJoin)
            .Add<Child>(c => c.Nickname == "test");
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top