fixture.cs
来自「NHibernate NET开发者所需的」· CS 代码 · 共 70 行
CS
70 行
using System;
using NUnit.Framework;
namespace NHibernate.Test.NHSpecificTest.NH687
{
[TestFixture]
public class Fixture : BugTestCase
{
public override string BugNumber
{
get { return "NH687"; }
}
[Test]
public void GetQueryTest()
{
//Instantiate and setup associations (all needed to generate the error);
Bar bar1 = new Bar();
Bar bar2 = new Bar();
Foo foo = new Foo();
bar1.Children.Add(bar2);
foo.FooBar = new FooBar();
foo.FooBar.Children.Add(new FooBar());
foo.FooBar.Children.Add(new FooBar());
foo.FooBar.Bar = bar1;
foo.FooBar.Children[0].Bar = bar2;
foo.FooBar.Children[1].Bar = bar2;
foo.Children.Add(new Foo());
foo.Children.Add(new Foo());
try
{
int child1Id, child2Id;
using (ISession session = sessions.OpenSession())
{
session.Save(foo);
child1Id = foo.Children[0].Id;
child2Id = foo.Children[1].Id;
session.Flush();
}
using (ISession session = sessions.OpenSession())
{
Foo r = session.Get<Foo>(foo.Id);
Assert.IsNotNull(r);
Foo child1a = session.Get<Foo>(child1Id);
Assert.IsNotNull(child1a);
Foo child2a = session.Get<Foo>(child2Id);
Assert.IsNotNull(child2a);
}
}
finally
{
using (ISession session = OpenSession())
{
session.Delete(foo);
session.Delete(foo.FooBar);
session.Delete(bar1);
session.Delete(bar2);
session.Flush();
}
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?