本文整理汇总了C#中Castle.ActiveRecord.Tests.Model.Blog.Evict方法的典型用法代码示例。如果您正苦于以下问题:C# Blog.Evict方法的具体用法?C# Blog.Evict怎么用?C# Blog.Evict使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Castle.ActiveRecord.Tests.Model.Blog
的用法示例。
在下文中一共展示了Blog.Evict方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: UsingTransactionScopeWithRollback
public void UsingTransactionScopeWithRollback()
{
SqlConnection conn = CreateSqlConnection2();
ISession session1, session2;
ITransaction trans1, trans2;
using(TransactionScope scope = new TransactionScope())
{
Blog blog = new Blog {Name = "hammett's blog", Author = "hamilton verissimo"};
blog.Save();
session1 = blog.GetCurrentSession();
trans1 = blog.GetCurrentSession().Transaction;
Assert.IsNotNull(session1);
Assert.IsNotNull(session1.Transaction);
Assert.IsFalse(session1.Transaction.WasCommitted);
Assert.IsFalse(session1.Transaction.WasRolledBack);
blog.Evict();
conn.Open();
using(new DifferentDatabaseScope(conn))
{
blog.Create();
session2 = blog.GetCurrentSession();
trans2 = blog.GetCurrentSession().Transaction;
Assert.IsNotNull(session2);
Assert.IsFalse( Object.ReferenceEquals(session1, session2) );
Assert.IsNotNull(session2.Transaction);
Assert.IsFalse(session2.Transaction.WasCommitted);
Assert.IsFalse(session2.Transaction.WasRolledBack);
scope.VoteRollBack();
}
}
Assert.IsFalse(session1.IsOpen);
Assert.IsFalse(session2.IsOpen);
Assert.IsFalse(trans1.WasCommitted);
Assert.IsTrue(trans1.WasRolledBack);
Assert.IsFalse(trans2.WasCommitted);
Assert.IsTrue(trans2.WasRolledBack);
using (new SessionScope()) {
var blogs = Blog.FindAll().ToArray();
Assert.IsNotNull( blogs );
Assert.AreEqual(0, Blog.Count());
var blogs2 = OtherDbBlog.FindAll().ToArray();
Assert.IsNotNull( blogs2 );
Assert.AreEqual(0, OtherDbBlog.Count());
}
}
示例2: UsingSessionScope
public void UsingSessionScope()
{
ISession session1, session2;
using (var conn = CreateSqlConnection2()) {
conn.Open();
using (new SessionScope()) {
Blog blog = new Blog {Name = "hammett's blog", Author = "hamilton verissimo"};
blog.Save();
session1 = blog.GetCurrentSession();
Assert.IsNotNull(session1);
blog.Evict();
using (new DifferentDatabaseScope(conn)) {
blog.Create();
session2 = blog.GetCurrentSession();
Assert.IsNotNull(session2);
Assert.IsFalse(Object.ReferenceEquals(session1, session2));
}
}
}
using (new SessionScope()) {
var blogs = Blog.FindAll().ToArray();
Assert.IsNotNull( blogs );
Assert.AreEqual(1, Blog.Count());
var blogs2 = OtherDbBlog.FindAll().ToArray();
Assert.IsNotNull( blogs2 );
Assert.AreEqual(1, OtherDbBlog.Count());
}
}