本文整理汇总了C#中System.Data.Entity.Core.EntityClient.EntityConnection.Dispose方法的典型用法代码示例。如果您正苦于以下问题:C# EntityConnection.Dispose方法的具体用法?C# EntityConnection.Dispose怎么用?C# EntityConnection.Dispose使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Data.Entity.Core.EntityClient.EntityConnection
的用法示例。
在下文中一共展示了EntityConnection.Dispose方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Should_use_interception
public void Should_use_interception()
{
var storeConnectionMock = new Mock<DbConnection>(MockBehavior.Strict);
storeConnectionMock.Protected().Setup("Dispose", true).Verifiable();
storeConnectionMock.SetupGet(m => m.State).Returns(() => ConnectionState.Closed);
storeConnectionMock.SetupGet(m => m.DataSource).Returns("fake");
storeConnectionMock.Setup(m => m.ToString()).Returns("Mock Connection");
storeConnectionMock.Protected()
.Setup<DbProviderFactory>("DbProviderFactory")
.Returns(GenericProviderFactory<DbProviderFactory>.Instance);
var mockConnectionInterceptor = new Mock<IDbConnectionInterceptor>();
DbInterception.Add(mockConnectionInterceptor.Object);
try
{
var entityConnection = new EntityConnection(CreateMetadataWorkspaceMock().Object, storeConnectionMock.Object, true);
entityConnection.Dispose();
}
finally
{
DbInterception.Remove(mockConnectionInterceptor.Object);
}
mockConnectionInterceptor.Verify(m => m.Disposing(It.IsAny<DbConnection>(), It.IsAny<DbConnectionInterceptionContext>()), Times.Once());
mockConnectionInterceptor.Verify(m => m.Disposed(It.IsAny<DbConnection>(), It.IsAny<DbConnectionInterceptionContext>()), Times.Once());
storeConnectionMock.Protected().Verify("Dispose", Times.Once(), ItExpr.IsAny<bool>());
mockConnectionInterceptor.Verify(
m => m.StateGetting(It.IsAny<DbConnection>(), It.IsAny<DbConnectionInterceptionContext<ConnectionState>>()),
Times.Exactly(2));
mockConnectionInterceptor.Verify(
m => m.StateGot(It.IsAny<DbConnection>(), It.IsAny<DbConnectionInterceptionContext<ConnectionState>>()),
Times.Exactly(2));
storeConnectionMock.Verify(m => m.State, Times.Exactly(2));
}