В чем отличие вот этих двух реализаций?
Реализация 1:
private QuestFromDll GetQuestConfigFromByets(byte[] data)
{
Assembly assembly = Assembly.Load(data);
var types = assembly.GetTypes();
Type resultType = null;
foreach (Type type in types)
{
foreach (Type interfaceType in type.GetInterfaces())
{
if (interfaceType.Equals(typeof(IQuestConfig)))
{
resultType = type;
break;
}
}
}
var setupObject = (IQuestConfig)Activator.CreateInstance(resultType);
var result = setupObject.SetQuest();
return result;
}
Реализация 2:
private QuestFromDll GetQuestConfigFromByets(byte[] data)
{
var stream = new MemoryStream(data);
Assembly assembly = LoadAssembly(stream);
var types = assembly.GetTypes();
Type resultType = null;
foreach (Type type in types)
{
foreach (Type interfaceType in type.GetInterfaces())
{
if (interfaceType.Equals(typeof(IQuestConfig)))
{
resultType = type;
break;
}
}
}
var setupObject = (IQuestConfig)Activator.CreateInstance(resultType);
var result = setupObject.SetQuest();
return result;
}
private Assembly LoadAssembly(MemoryStream stream)
{
return AssemblyLoadContext.Default.LoadFromStream(stream);
}
что мне дает если я гружу assembly при помощи AssemblyLoadContext
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Не могу понять как реализовать фильтр на столбце datagrid например как на картинке:
мне кажется нужен цикл с условием,только не знаю куда его вставить