-
Notifications
You must be signed in to change notification settings - Fork 0
/
AdvancedModel.cs
30 lines (27 loc) · 945 Bytes
/
AdvancedModel.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
using System;
using Autofac;
using Autofac.Features.OwnedInstances;
namespace ContainerBased.Models
{
public class AdvancedModel
{
private readonly Func<DBEntities> _dbFactory;
private readonly Func<Owned<DBEntities>> _ownedFactory;
private readonly LifetimeManagementModel _moreAdv;
public AdvancedModel(Func<DBEntities> dbFactory, Func<Owned<DBEntities>> ownedFactory, LifetimeManagementModel moreAdv)
{
_dbFactory = dbFactory;
_ownedFactory = ownedFactory;
_moreAdv = moreAdv;
// What do you think the difference is between Lazy<DBEntities> and Func<DBEntities>?
}
public void Proccess()
{
_dbFactory().ExecuteFunction("sdf");
using (var dbowner = _ownedFactory())
{
dbowner.Value.ExecuteFunction("foo");
}
}
}
}