我有一個正在運行並且工作正常的Unity應用程序,但我們正在通過處理所有編譯警告來清理我們的代碼。如何替換Unity解決方案中過時的Microsoft.Practices.Unity.Configuration.ContainerElement.Configure方法?
我得到的,因爲過時的Microsoft.Practices.Unity.Configuration.ContainerElement.Configure方法的下面的代碼段的警告:
var map = new ExeConfigurationFileMap { ExeConfigFilename = GetConfigFolderForFile("unity.config") };
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);
var section = (UnityConfigurationSection)config.GetSection(SectionName);
if (section != null)
{
var container = new UnityContainer();
foreach (ContainerElement containerElement in section.Containers)
{
containerElement.Configure(container);
}
Container = container; // Set the main container
}
我想與UnityConfigurationSection.Configure來代替它方法,但不能看出它們是等價的,因爲處於對象層次結構的不同級別。
我已經試過:
var map = new ExeConfigurationFileMap { ExeConfigFilename = GetConfigFolderForFile("unity.config") };
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);
var section = (UnityConfigurationSection)config.GetSection(SectionName);
if (section != null)
{
IUnityContainer container = new UnityContainer();
container = section.Configure(container);
Container = container; // Set the main container
}
但落下來與空引用。
我應該如何更新代碼以消除使用過時的方法?