Autofac wie man veraltete update ersetzt ()C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Autofac wie man veraltete update ersetzt ()

Post by Anonymous »

I Heve Two Clasess < /p>

Code: Select all

namespace ExtendedModules.MyExtendedModule
{
public class MyWrapper : ISystemInfoSource, IDisposable
{
public MyWrapper(ILicenceProvider licenceProvider, ISQLConnection connection, IDataSharingOptions dataSharingOptions)
{

}

public bool ManualLoadingConditions
{
get { return _seakeepingSettings != null && Convert.ToBoolean(_seakeepingSettings["ManualLoadingConditions"]); }
}

public bool LicenseValid
{
get { return _licenseValid; }
}

}
}
< /code>
SECEND -Klasse < /p>
public class MyUi
{
private MyWrapper _wrapper;
private IWaitWindowNavigator _waitNavigator;

public delegate bool CalculateAction(out string message);

public MyUi(MyWrapper wrapper, IWaitWindowNavigator waitNavigator)
{
_wrapper = amarcon;
_waitNavigator = waitNavigator;
}

}
< /code>
Ich habe einen alten Code gefunden, in dem wir ein bedingtes Registrierungsmodul
haben, und in diesem Modul haben wir einige Clasess registriert.[MethodImpl(MethodImplOptions.NoInlining)]
public void Register(ContainerBuilder builder)
{
var optionsConnection = new ResolvedParameter(
(p, c) => p.ParameterType == typeof(ISQLConnection),
(p, c) => c.ResolveNamed("options"));

builder.RegisterType().WithParameter(optionsConnection).SingleInstance().As().AsSelf();
builder.RegisterType().SingleInstance();

builder.RegisterType().WithParameter(new TypedParameter(typeof(ContainerBuilder), builder)).SingleInstance().As();

}
< /code>
Und in dieser Klasse registrieren wir bedingte andere Klassen für das Ende dieses Prozesses, den wir mit Update (..) < /p>
verwendet habenpublic class LicenseRegistrations : IStartable
{
public LicenseRegistrations(IComponentContext context, MyWrapper wrapper, ContainerBuilder builder)
{
if (!wrapper.LicenseValid)
return;
var optionsConnection = AutofacUtils.ResolvedParameter((c) => c.ResolveNamed("options"));

if (wrapper.ManualLoadingConditions)
{
builder.RegisterType().As();

builder.RegisterType().SingleInstance();
builder.RegisterType();
builder.RegisterType();
builder.RegisterType().SingleInstance().As();
builder.Update(context.ComponentRegistry);
}
}

public void Start()
{
}
}
< /code>
Dieser alte Code beginnt mit der Arbeit, wenn ich die Registrierung von lizenziereregistrierungen an MyModule
verschiebe, aber ich brauche Kommentarbedingungen < /p>
Bildbeschreibung Eingabetaste hier < /p>
[MethodImpl(MethodImplOptions.NoInlining)]
public void Register(ContainerBuilder builder)
{
var optionsConnection = new ResolvedParameter(
(p, c) => p.ParameterType == typeof(ISQLConnection),
(p, c) =>  c.ResolveNamed("options"));

builder.RegisterType().WithParameter(optionsConnection).SingleInstance().As().AsSelf();
builder.RegisterType().SingleInstance();

//builder.RegisterType().WithParameter(new TypedParameter(typeof(ContainerBuilder), builder)).SingleInstance().As();

// if (!wrapper.LicenseValid)
//     return;

//if (wrapper.ManualLoadingConditions)
//{
builder.RegisterType().As();

builder.RegisterType().SingleInstance();
builder.RegisterType();
builder.RegisterType();
builder.RegisterType().SingleInstance().As();
//}

}
Wissen Sie, was ich tun muss, um die Bedingungen aufrechtzuerhalten?>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post